猛砸,检验变量
问题描述:
好了,所以我试图运行,如果用户输入y
或Y
地方,然后输出为YES
的脚本,但如果用户输入n
或N
然后输出NO
,这就是我到目前为止有:猛砸,检验变量
read character
if ((("$character") == "y")) || ((("$character" == "Y"))); then
echo "YES"
else
echo "NO"
fi
当我运行这段代码,我得到YES
成功,但输入n
只是导致YES
反正。
我不知道我做错了什么,我喜欢一些输入。
在此先感谢!
答
((...))
用于数学计算。您可以在BASH使用[[...]]
这样的:
read character
if [[ "$character" == [yY] ]]; then
echo "YES"
else
echo "NO"
fi
而且我已经合并2个条件为使用[yY]
glob模式之一。
'[yY]'是**也是一个glob模式**,它被'==' – anubhava 2014-10-20 06:26:41