Shell 脚本:如果我从该脚本调用另一个 shell 脚本,Crontab 不会执行 shell 脚本



我有一个运行器外壳脚本,其中我定义了其他外壳脚本以一次性执行。手动运行时,它工作正常。但是当我通过 crontab 运行时,它不会触发。

我还看到,如果我添加/bin/bash Script.sh 那么它可以工作。但是在每个脚本之前添加添加/bin/bash非常复杂,因为某些脚本也在内部调用其他脚本?

谢谢。

对您的问题最可能的解释是,默认情况下 Cron 倾向于使用/bin/sh运行东西,因此您没有所有可用的 BASH 功能。

要解决此问题,请将 cron 文件中的命令从/a/b/script.sh更改为/bin/bash /a/b/script.sh,以便您的顶级脚本以 bash 开头。还建议在所有脚本文件的开头放置一个#!(shebang(

最新更新