ユーザー入力制御

ユーザー入力制御

私は基本的に非常に特定の産業プロセスのための電卓であるスクリプトを書いています。英数字入力をブロックし、数字入力のみを許可したいと思います。どうすればいいですか? ? ? ユーザー入力として変数を使用しましたが、ユーザーが数字だけを入力するように制限したいです。電卓だからです。

たとえば、

CP=0

echo -n "個数%を入力してください"

CPを読む

ベストアンサー1

次のような作業が必要です。

入力を繰り返します。数字であることを確認してください。そうでない場合は、エラーを印刷してループの先頭に戻ります。数値の場合は、残りのスクリプトを続行します。

以下は非常に単純なアルゴリズムの実装です。

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

おすすめ記事