1
此檢查參數是Bourne shell腳本的整數檢查參數非整
if [[ $3 =~ ^[0-9]+$ ]] && (( $3 >= 1))
如何檢查,如果參數不是一個整數(可以由整數和字母的)? 所以,我想這只是上面的補充,但我不知道如何改變它。 我在哪裏可以找到關於這些符號的意思?:信息 =〜^ + $ &
此檢查參數是Bourne shell腳本的整數檢查參數非整
if [[ $3 =~ ^[0-9]+$ ]] && (( $3 >= 1))
如何檢查,如果參數不是一個整數(可以由整數和字母的)? 所以,我想這只是上面的補充,但我不知道如何改變它。 我在哪裏可以找到關於這些符號的意思?:信息 =〜^ + $ &
您可以使用De Morgan's Law否定,如果條件檢查的過程如下:內
if [[ ! $3 =~ ^[0-9]+$ ]] || (( $3 < 1))
!
符號[[...]]
意味着否定。$3 < 1
是$3 >= 1
否定的=~
運營商允許在if語句中使用正則表達式。
這裏使用的&&
的意思是「邏輯與」
符號^ + $
的其餘爲Regular Expression,這是一個主題值得更多的閱讀比我能在這個答案提供,但在短:
^
:線+
:匹配一個或多個(在這種情況下它匹配一個或多個數字)$
:匹配行尾^[0-9]+$
表示:只匹配除數字以外的任何字符串。