Bash,检查变量

时间:2014-10-20 06:17:25

标签: bash if-statement echo

好的,我正在尝试运行一个脚本,如果用户输入yY,则输出为YES,但如果用户输入{{1} }}或n然后输出为N,这是我到目前为止:

NO

当我运行此代码时,我成功read character if (( ("$character") == "y" )) || (( ("$character" == "Y") )); then echo "YES" else echo "NO" fi 但输入YES只会产生n

我不知道我做错了什么以及我喜欢什么输入。

提前致谢!

1 个答案:

答案 0 :(得分:4)

((...))用于数学计算。您可以在BASH中使用[[...]],如下所示:

read character
if [[ "$character" == [yY] ]]; then
   echo "YES"
else
   echo "NO"
fi

此外,我使用[yY] glob模式将2个条件合并为一个。