2

Mac OS 的 bash 和其他 linux 的 bash 是否有区别?我编写了一个名为“test.sh”的简单 bash 脚本,如下所示:

#!/bin/bash
MYVAR=abc
if [ $MYVAR = abc ]; then
echo "ok"
fi

当我在终端中运行它时,会发生一些错误:

./test.sh: line 3: syntax error near unexpected token `then'
./test.sh: line 3: `if[ $MYVAR = abc ]; then'

然后我删除字符“;” 在“then”之前并再次运行脚本,会出现一些信息:

./test.sh: line 3: if[ abc = abc ]: command not found
ok
./test.sh: line 5: syntax error near unexpected token `fi'
./test.sh: line 5: `fi'

有人可以告诉我我的脚本有什么问题吗?

4

2 回答 2

4

考虑按照您在示例中的方式在文件中添加空格 ( if [)。

于 2012-08-22T09:13:20.183 回答
2

[是一个命令(与 相同test)。两边必须用空格隔开。

于 2012-08-22T09:40:41.043 回答