【发布时间】:2012-04-08 15:17:51
【问题描述】:
我有一个 Perl 脚本,我想通过 cron 每 4 小时运行一次。但不知何故,如果我通过命令行运行它,它无法通过 cron 执行并且运行良好。以下是我在 crontab 中设置的命令:
perl -q /path_to_script/script.pl > /dev/null
另外,当我在命令提示符下运行此命令时,它不会执行,但是当我进入 path_to_script 的叶子文件夹并执行文件时,它运行正常。
另外,这个 cron 作业的日志文件将在哪里创建以便我可以查看它们?
【问题讨论】:
-
我假设您正确设置了 cron 时间字段,并且您故意将它们遗漏了? IE。你知道你必须在你的 crontab 文件中写这样的“* */4 * * * 命令”——对吧?
-
您的 crontab 中可能未配置 PATH 环境变量。将 perl 可执行文件的完整路径放入您的字符串中,看看是否有帮助
-
perl -q应该做什么?我收到错误Unrecognized switch: -q -
在调试 cron 脚本时,不要将可能有用的输出发送到 /dev/null。