我在 crontab -e 中有以下条目,
0 16 * * * /opt/nginxstack/Dropbox-Uploader/DatabaseDumper.sh > /var/log/cron.log 2>&1
19 20 * * * /opt/nginxstack/Dropbox-Uploader/upload_dump_dropbox.sh > var/log/cron.log 2>&1
第一个 shell 脚本运行良好,而第二个脚本则无法执行。我在日志中也找不到任何内容。有人可以帮忙吗?权限设置正确,并且/opt/nginxstack/Dropbox-Uploader/upload_dump_dropbox.sh
从终端运行时有效。我以 root 身份运行。
编辑:下面是我在 upload_dump_dropbox.sh 中的代码
#!/bin/bash
/opt/nginxstack/Dropbox-Uploader/dropbox_uploader.sh upload /opt/nginxstack/Dropbox-Uploader/mysqldumpsvps/* /mysqlbckfromvps
答案1
当命令行上的重定向失败时,不会执行关联的命令。
例子:
$ echo 'hello' >nonexistent/path
/bin/sh: cannot create nonexistent/path: No such file or directory
(echo
永远无法执行)
您的第二个 cron 作业重定向到相对路径名var/log/cron.log
.如果该路径名在作业的工作目录中不可用,则此重定向将失败并且作业根本不会执行。
cron 守护进程应该向 crontab 的所有者发送一封电子邮件,其中包含每次执行尝试的错误消息。