#!/bin/bash
a=10
b=10
if [ $a == $b ]
then
echo "a 等于 b"
fi
一直提示
do.sh:行7: 未预期的符号 `fi' 附近有语法错误
do.sh:行7: `fi'
但是代码没有问题,是什么原因?
服务器版本是CentOS Linux release 7.2.1511 (Core)
#!/bin/bash
a=10
b=10
if [ $a == $b ]
then
echo "a 等于 b"
fi
一直提示
do.sh:行7: 未预期的符号 `fi' 附近有语法错误
do.sh:行7: `fi'
但是代码没有问题,是什么原因?
服务器版本是CentOS Linux release 7.2.1511 (Core)
格式是这样的:
if [ command ];then
符合该条件执行的语句
elif [ command ];then
符合该条件执行的语句
else
符合该条件执行的语句
fi
我刚刚也遇到这个问题了,解决方法出乎意料:
这其实是 zsh 的兼容性问题,你肯定装了 oh-my-zsh,然后用 sh xxx.sh 运行脚本,用 bash 来执行就没这个问题了:
bash xxx.sh
then必须放if同一行