当用户没有输入任何选择时

When user doesnt enter any choice

我需要要求 unix shell 脚本中的用户输入输入以在代码块中进一步处理。只有当用户输入 Y(区分大小写)时才需要显示 'Hi',否则只显示 'Bye'。 'Bye' 应在用户按下键盘上的回车键或他不输入任何内容时显示。

此外,请注意,我需要根据用户输入显示任一回显消息,并最终达到 'Proceeding to next line of code' 代码。

当用户按下回车键时,我遇到了其他情况下的错误 [: ==: unary operator expected

echo 'Do you want to proceed?'
read i
if [ $i == 'Y' ]
then
   echo 'Hi'
else
   echo 'Bye'
fi

echo 'Proceeding to next line of code'

只需在您的变量中添加双引号:

echo 'Do you want to proceed?'
read i
if [ "$i" == 'Y' ]
then
    echo 'Hi'
else
    echo 'Bye'
fi
echo 'Proceeding to next line of code'

你应该使用 elif:

echo 'Do you want to proceed?'
read i
if [ $i == 'Y' ]
then
   echo 'Hi'
elif [$i == 'N']
   echo 'Bye'
else
   echo 'you are enterd a unknow value'
fi

echo 'Proceeding to next line of code'