私は、変数が文字でないかどうかを調べる方法しか分かりません。変数が文字ではなく、整数でnより大きくないかどうかをwhileステートメントでチェックインする方法は?
これは動作します:
read o
while [[ ! $o =~ -?[0-9]+ ]]; do
echo wrong
read o
done
しかし、私はそれがnよりも文字が、整数と大きい(私は>
ない>=
を望ん)ない場合、while文にチェックしたいです。
これは私がこれまでにしようとしているものです:
read o
while [[ ! $o =~ -?[0-9]+ ]] && [[ $o > "2" ]] ; do
echo wrong
read o
done
しないのはなぜこの作品?
何か応答は歓迎です!
あなたの入力は何ですか? –
@GillesGouaillardetそれは目標です: 'read o'はユーザー入力を読み込みます。 –
「整数ではないか、2より小さいか等しい」であるべきですか? –