UNIX 中的 cronjob 中出现“执行权限被拒绝”的原因是什么?

UNIX 中的 cronjob 中出现“执行权限被拒绝”的原因是什么?

我有一个 shellscript,可以使用命令在 UNIX 中成功执行sh Shell_script.sh;但我希望它自动运行。所以我只是配置了一个 cronjob 来使用crontab -e.

添加的 cronjob 如下:

0 7-23 * * * * /home/folder1/folder2/Shell_script.sh > /dev/null 2>&1

我希望它每天早上 7 点到晚上 11 点每小时执行一次。

我的 shell 脚本有一个 she-bang #!/bin/bash。我每小时都会收到一封邮件,内容如下:

您在 servername 上的“cron”作业 * /home/folder1/folder2/Shell_script.sh > /dev/null 2>&1

产生以下输出:

sh: +61: 执行权限被拒绝

答案1

你的 cron 行中有额外的内容*,它被解释为用户名。一旦删除它就会很好地执行。

还要考虑您的 Shell_script.sh 是否不可执行,您需要运行sh(如果它是用 sh 编写的)或者bash如果它是 bash 编写的。

0 7-23 * * * bash /home/folder1/folder2/Shell_script.sh > /dev/null 2>&1

相关内容