天天看點

shell中數字大小的比較

【整數之間的比較】

示例腳本:

#!/bin/bash

if [ $1 -gt $2 ]

then echo "參數$1大于參數$2"

else echo "參數$1小于參數$2"

fi

數字判斷一些指令:

#-gt是大于

#-lt是小于

#-eq是等于

#-ne是不等于

#-ge是大于等于

#le是小于等于   

【小數及整數之前的比較】

示例腳本:

a=1.6 b=6.1 c=`echo "$a > $b" | bc`

說明:

可以使用的比較符号:

>

<

==

>=

<=

如果雙引号内執行結果為真,c的值就是1,否則c的值就是0.

注意:這裡一定一定要注意的是,這個比較結果就是0或1,而不是代表true或false,因而不能用于if後的條件判斷!切記切記!

另,字元串的比較:

字元串中有可能有空格等,是以最好是使用雙引号将字元串都括起來,例如:

示例腳本:

a="hello  world" b="hello world" if [ "$a" = "$b" ] then         echo "a is same as b" else         echo "a is different from  b" fi

該腳本執行結果為:a is different from  b

可以看出,字元串比較時,空格也會參與比較。

繼續閱讀