だからこれは私のコードです
#!bin/bash
PS3='Pick the one you like and we will continue: '
select color in "Blue" "Black" "Orange" "Yellow"
do
echo "You selected $color"
break
done
echo
var=":"
echo "Alrighty, please type in the password as you have specified the color $color"
read var
until [ "$var" -ne password ]
do
echo "You have specified a wrong password, and a wrong color please leave the script the script"
break
done
端末は次のように応答します。
1) Blue
2) Black
3) Orange
4) Yellow
Pick the one you like and we will continue: 1
You selected Blue
Alrighty, please type in the password as you have specified the color Blue
23
/root/Desktop/Bash/Test_1.sh: line 16: [: password: integer expression expected
You have specified a wrong password, and a wrong color please leave the script
ベストアンサー1
あなたは仕事を:
[ "$var" -ne password ]
-ne
[
(等しくない)は、つまり両方が整数であると予想する整数演算子です。
ただし、var=":"
最初はread
ユーザー入力を-ingして入れると入力が整数ではvar
ないため、エラーメッセージが表示されることがあります。
とにかく整数であれば、それpassword
自体が文字列であるため、チェックは失敗します。
文字列が等しいかどうかを比較したい場合、演算子は次のようになります=
。
[ "$var" = password ]
不平等:
[ "$var" != password ]