shell指令碼之判斷輸入引數是否為整數值的例項

2022-09-26 14:39:19 字數 698 閱讀 3008

在寫指令碼時,通常會有很多關於命令列引數,變數等的判斷其是否存在或者型別是否正確。當判斷乙個從命令列接收到乙個值,需要判斷其是否為整型值時,有以下兩種方法:

1、用shell命令使其與某個整型值進行計算,通過$?來判斷其是否是乙個整型值。

flag=true

read -p "please input a number:" num

while $flag

do expr $num + 0 &>/dev/nuwww.cppcns.comll

[ $? -eq 0 ] && fwww.cppcns.comlag=false || read -p "plewww.cppcns.comase 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指令碼之判斷輸入引數是否為整數值的例項

本文位址: /os/linux/234508.html

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