shell例項第10講:判斷使用者輸入的是否為數字
阿新 • • 發佈:2021-02-01
#!/bin/bash
if [ -n "$1" ]; then
if [[ $1 =~ ^[0-9]+$ ]]; then
echo "$1 Is Number."
else
echo "$1 No Number."
fi
else
echo "please input number!"
fi
說明:if [[ $1 =~ ^[0-9]+$ ]] (1)=~ 運算子就是進行正則表示式判斷之用的,左側的字串會依右側的正則表示式做匹配, 若匹配則結果為true,不匹配則結果為false。 (2)^是開頭開頭符號,$是結尾符號,+號是多個的意思,不限位數與 *號類似。 (3)if [ -n "$1" ];表示$1不為空;if [ ! -n "$1" ];表示$1為空 即:if [ -n str1 ]當串的長度大於0時為真(串非空)