如果Mac OS和其他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'
有人能告诉我我的剧本有什么问题吗?
答案 0 :(得分:4)
考虑将空格放入文件中,就像在示例中一样(if [
)。
答案 1 :(得分:2)
[
是一个命令(与test
相同)。它必须用两边的空格分开。