User-Interface

使用者輸入控制

  • February 29, 2016

我正在寫腳本,基本上它是一個非常具體的工業過程的計算器。我想阻止字母數字輸入並只允許數字輸入。我該怎麼做???? 我使用變數進行使用者輸入,但***我想限制使用者只能輸入數字,***因為它是一個計算器。

例如:

cp=0

echo -n “請輸入計數%”

讀cp

你想做這樣的事情:

循環讀取輸入。檢查它是否為數字。如果不是,則列印錯誤並返回到循環的開頭。如果它是數字,則繼續腳本的其餘部分。

這是該算法的一個非常簡單的實現:

numeric=0
while [ $numeric -eq 0 ] ; do
 read -p "Please enter count % " cp
 if [[ $cp =~ ^[0-9]+$ ]] ; then
   numeric=1
 else
   echo "Error: enter numeric value only"
 fi
done

引用自:https://unix.stackexchange.com/questions/266459