1. 程式人生 > 其它 >shell例項第10講:判斷使用者輸入的是否為數字

shell例項第10講:判斷使用者輸入的是否為數字

技術標籤:shell指令碼shelllinux

#!/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時為真(串非空)