在寫指令碼時,通常會有很多關於命令列引數,變數等的判斷其是否存在或者型別是否正確。當判斷乙個從命令列接收到乙個值,需要判斷其是否為整型值時,有以下兩種方法:
1.用shell命令使其與某個整型值進行計算,通過$?來判斷其是否是乙個整型值。
flag=true
read -p "please input a number:" num
while $flag
do expr $num + 0 &>/dev/null
[ $? -eq 0 ] && flag=false || read -p "please input a integer:" num
done
2.通過sed來判斷flag=true
read -p "please input a number:" num
while $flag
do len=`echo "$num"|sed 's/[0-9]//g'|sed 's/-//g'`
[ -n $len ] && flag=false || read -p "please input a integer:" num
done
shell指令碼之判斷輸入引數是否為整數值的例項
在寫指令碼時,通常會有很多關於命令列引數,變數等的判斷其是否存在或者型別是否正確。當判斷乙個從命令列接收到乙個值,需要判斷其是否為整型值時,有以下兩種方法 1 用shell命令使其與某個整型值進行計算,通過 來判斷其是否是乙個整型值。flag true read p please input a n...
shell 指令碼之if判斷
bin bash user 1 單條件if的判斷 if user qa then 判斷傳入的使用者名稱是否是qa,如果是就輸出使用者名稱 echo user fi if else 結構 if user test then 判斷傳去的使用者名稱是否是 test,如果是就輸出使用者名稱,如果不是就輸出 ...
shell指令碼輸入引數檢驗
防止命令拼接注入等問題。本來想做黑名單校驗,比如說不能包含分號,等符號。考慮到沒有白名單安全,故使用白名單進行檢驗。校驗規則 只允許使用 數字大小寫字母 點號和冒號 ipv4和ipv6 斜桿 空格 指令碼 para echo para grep q e 0 9a za z.result if res...