【问题标题】:Perl script in crontab is not running from monday to fridaycrontab 中的 Perl 脚本从周一到周五没有运行
【发布时间】:2018-10-26 05:07:14
【问题描述】:

我有一个脚本,该脚本将在周一至周五上午 12:50 每天通过 crontab 运行。下面是crontab的代码

50 00 * * 1-5 /u01/app/ecm2fs/deep/FS/kadecut.pl >> /u01/app/ecm2fs/deep/FS/salescut.log

但它没有运行。但是当我手动执行它时它正在运行。谁能告诉我可能是什么问题?

【问题讨论】:

  • /u01/app/ecm2fs/deep/FS/salescut.log 中有什么内容? Cron 可能有不同的环境变量和工作目录,所以你的脚本会出错。还要在末尾添加 2>&1 以将错误输出到日志。
  • 这是我在脚本中附加任何错误的地方
  • 我只是通过 crontab 打印一个 hello world 但它正在工作...... 51 00 * * 1-5 /u01/app/ecm2fs/deep/FS/hello.ksh >> /u01/app/ecm2fs/deep/FS/hello.log
  • 在 cron 行末尾添加 2>&1 以将错误输出到日志。您也可以在脚本开头添加BEGIN {print "hello\n"},以便在脚本运行出错之前输出一些内容。
  • CronJob not running的可能重复

标签: perl cron


【解决方案1】:

尝试运行脚本(通过 crontab)

/usr/bin/perl /u01/app/ecm2fs/deep/FS/kadecut.pl ...

可能是 shebang 行没有正确处理。您是作为 Perl 脚本运行 HelloWorld 脚本还是 .ksh 脚本? 尽量避免脚本中的任何相对路径,它很可能会中断,因为其他用户的环境可能不同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-07-16
    • 2013-02-16
    • 2022-10-06
    • 1970-01-01
    • 1970-01-01
    • 2015-09-24
    • 1970-01-01
    • 2020-05-20
    相关资源
    最近更新 更多