目录

Crontab执行shell脚本报错

目录

shell执行脚本报错如下(环境centos7)

1
[: ==: unexpected operator

脚本如下:

1
2
3
4
5
#!/bin/sh

if [ $1 == "hello" ]; then
    echo "Well done!"
fi

这是因为 shell 脚本开头使用 #!/bin/sh,而不是 #!/bin/bash。而 /bin/sh 使用的是 dash,dash 中默认的判断语句是 =,而不是 bash 使用的 ==

#!/bin/sh改为#!/bin/bash后,执行成功。

警告
本文最后更新于 August 4, 2023,文中内容可能已过时,请谨慎使用。