Shell实例:字符串操作 逻辑判断

#!/bin/bash
echo "enter a number"

#read input value
read ans

#case
case $ans in
        1)
        echo "your number is $ans"
        ;;
        2)
        echo "your number is 2"
        ;;
        [3-9])
        echo "your number is $ans"
esac


echo "Parameter numbers:$#"
echo "Shell name:$0"
echo "Shell all parameters:$*"
echo "Shell PID:$$"
echo "Shell PPID:$!"
echo "Before command return value:$?"

#echo "get command return:$(ls /home/provision)"

#if : -eq(==) -ne(!=) -lt(<) -gt(>) -ge(>=) -le(<=)
if [ "22" -lt "33" ]
then
        echo "22 less than 33"
else
        echo "22 not less than 33"
fi

#while
#no space left or right =
num=1
echo "init num = $num"
#need space after [ ,before ]
while [ $num -le 10 ]
do
        echo "num=$num"
        let num=num+1

done


#file exist
fileName="case_test.sh"
if [ -e $fileName ]
then
        echo "$fileName is exist:"
else
        echo "$fileName is not exist:"
fi

#is directory
if [ -d $fileName ]
then
        echo "$fileName is directory"
else
        echo "$fileName is not directory"
fi

if [ -z $fileName ]
then
        echo "fileName length is 0"
else
        echo "fileName length is not 0"
fi

if [ -n $fileName ]
then
        echo "fileName length is not 0"
else
        echo "fileName length is 0"
fi

#
for filename in `ls`
do
        cat $filename
done

for((i=0; i<10; i++))
do
        echo "--$i"
done

echo "Name:${name:-huangxiaobing}"

#function return only number cannot return string
getName(){
    return 100
}

getName
echo "getName:$?"


#connect two string
firstname="huang"
lastname="xiaobing"
allname=`printf "%s%s" "$firstname" "$lastname"`
echo "All Name:$allname"

#get the char count of string
countChar=`echo "$firstname"|wc -m`
echo "$firstname count:$countChar"

#return nor number char: return null
echo "12345"|sed 's/[0-9]//g'
#return A
echo "123A45"|sed 's/[0-9]//g'
#return huang
echo ${allname%%xiaobing}
echo ${allname:0:5}
echo ${allname:2:7}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值