如果在OS X终端中使用带用户输入的命令

5

我是一个新手,正在尝试在OS X终端中使用if命令和read命令。

就像这样:

echo stuff:
read f
if [ "f" == "y"]
then 
echo wassup
else exit

我做错了什么?
1个回答

13
你在请求bash比较字符串fy是否相等。显然,它们不相等。你需要使用变量替换:

您正在要求bash比较字符串fy是否相等。很明显,它们不相等。您需要使用变量替换:

if [ "$f" == "y" ]

因此,它在询问“变量f的内容组成的字符串是否等同于字符串y?”,这可能是您尝试执行的操作。

您还缺少一个反向的if,即fi,用于结束if语句。两者一起如下:

if [ "$f" == "y" ]
then
    # true branch
else
    # false branch
fi

1
@SpectrumCreations 同时请注意,在您的原始帖子中,关闭的 ] 前面没有空格;这是必需的。 - chepner

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接