shell中字符串比较,整数大小比较

2020-01-08  本文已影响0人  AibWang

1. 判断一个字符串是否为空

str1=""
if [ "$str1" == "" ]
then
    echo “str1 is a empty string.”
fi

注意上述变量str1使用了双引号括起来,如果没有双引号,程序并不报错,但实际的判断过程并不如我们所想,也即是判断的并不是字符串是否为空。

同样的,判断两个字符串相等,每个变量也必须使用双引号括起来。

2. shell中整数大小比较

注:如果是浮点数大小比较,可以通过awk实现。

a=12.34
b=10.9
y_or_n=`echo $a $b | awk '{if($1 > $2) print 1; else print 0;}'`
if [ $y_or_n -eq 1 ]
then
    echo "a > b"
else
   echo "a <= b"
fi

通过引入一个y_or_n参数将浮点数大小比较转换为整数大小比较。

3. shell中的逻辑运算符

4. shell中判断一个文件(file)或目录(directory)是否存在

if [ -e $file ]
then
   rm $file
fi
# ============
if [ ! -e $directory ]
then
    mkdir -p $directory
fi
上一篇 下一篇

猜你喜欢

热点阅读