數字比較大小腳本

用if語句的兩種方法來判斷兩個數字的大小。


第一種:

#!/bin/bash
a=$1
b=$2
#參數的個數不等於2的情況下
[ $# -ne 2 ]&&{
        echo "USAGE:$0 NUM1 NUM2"
        exit 1
}

#計算返回值
expr $a + 0 &>/dev/null
RETVAL1=$?
expr $b + 0 &>/dev/null
RETVAL2=$?

#返回值的結果必須都爲0  $? 上一個命令的返回值 0表示成功
test $RETVAL1 -eq 0 -a $RETVAL2 -eq 0||{
        echo "Please enter input two "num" again."
        exit 2
}

#比較
if [ $a -eq $b ];then
        echo "$a = $b"
elif [ $a -gt $b ];then
        echo "$a > $b"
elif [ $a -lt $b ];then
        echo "$a < $b"
else
        exit
fi
注:腳本在此頁面可能有的字符會自動變成中文字符,如果貼出來運行有可能會報錯,只能慢慢照着敲。


第二種

#!/bin/bash
read -t 5 -p "Please enter input two num:" a b

#判斷是字符串長度是否等於零,如果等於零則爲真
[ -z "$a" ] || [ -z "$b" ]&&{
        echo "Please enter input two num agagin."
        exit 1
}

#判斷返回值的結果是否爲trun
expr $a + 0 &>/dev/null
RETVAL1=$?
expr $b + 0 &>/dev/null
RETVAL2=$?

#判斷返回值的結果是否都是trun
test $RETVAL1 -eq 0 -a $RETVAL2 -eq 0||{
        echo "Please enter input two "num" again."
        exit 2
}

#判斷大小
if [ $a -eq $b ];then
        echo "$a = $b"
elif [ $a -gt $b ];then
        echo "$a > $b"
elif [ $a -lt $b ];then
        echo "$a < $b"
else
        exit 3
fi
exit
注:腳本在此頁面可能有的字符會自動變成中文字符,如果貼出來運行有可能會報錯,只能慢慢照着敲。

總結:

        學腳本只能多練,才能慢慢的形成一種腳本思維,否則永遠寫不出屬於自己的腳本。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章