read A
if [["$A" == 'Y' -o "$A" =='y']]
then echo "YES"
else echo "NO"
fi
我是shell脚本的新手。基本上,我试图检查输入是Y
还是y
。
我收到以下错误,我无法调试。
solution.sh: line 2: [[Y: command not found
感谢。
答案 0 :(得分:3)
[[
if应该像
if [[ "$A" == 'Y' || "$A" == 'y' ]]
[[ ]]
是 extended test command,就像任何命令一样,它应该用空格与其他命令分开
答案 1 :(得分:1)
在方括号内和==
:
read A
if [ "$A" == 'Y' -o "$A" == 'y' ]; then
echo "YES";
else
echo "NO";
fi
请注意,要使用-o
,您应该使用test
命令,该命令使用单括号。
如果您使用 [[]] ,双括号,则必须使用||
代替-o
:
read A
if [[ "$A" == 'Y' || "$A" == 'y' ]]; then
echo "YES";
else
echo "NO";
fi