shell中數字大小的比較

2021-09-14 03:11:12 字數 856 閱讀 2833

【整數之間的比較】

示例指令碼:

#!/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

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

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 ...

shell 比較大小

一 整數比較 eq 等於,如 if a eq b ne 不等於,如 if a ne b gt 大於,如 if a gt b ge 大於等於,如 if a ge b lt 小於,如 if a lt b le 小於等於,如 if a le b 大於 需要雙括號 如 a b 大於等於 需要雙括號 如 a ...

shell 比較兩個數的大小

shell中比較兩個數的大小,一般可以使用大小於號 和 ge gt le lt 比如 大於輸出1,否則輸出0 root localhost64 3 gt 2 echo 1 echo 0 1 root localhost64 3 gt 20 echo 1 echo 0 0 root localhost...