如何在centos中使用crontab执行bash脚本?

我的bash文件不是由作为root创build的cronjob执行的。 cronjob设置看起来如下

0 0 * * * mysql_backup.sh 

需要使用bash命令进行decalared 0 0 * * * bash mysql_backup.sh ? 如果我手动执行手动我的bash脚本sudo bash mysql_backup.sh比它的工作。

我一直在使用sudo crontab u root -e创buildcronjob,并且bash文件位于centos的根目录下

首先,您需要使用完整path,如:

 0 0 * * * /path/to/mysql_backup.sh 

其次,您需要确保您的脚本具有执行权限,或者您可以使用以下方法调用它:

 0 0 * * * /bin/bash /path/to/mysql_backup.sh 

第三,你需要确保你正在以足够的权限执行你的cron作业。

另外,您可以在脚本的第一行添加以下命令:

 #!/bin/bash 

(假设bash位于/ bin / bash中)。 这将使你的脚本运行,即使直接调用bash,而不是作为bash的参数。

您可以添加一些日志logging,并检查您的crontab日志,看是否有任何错误,可能导致您的解决scheme。