我已经设置了一个cron作业,如下所示,但它不会运行。当我手动运行脚本时,我没有看到任何错误。
#_____WPR Jobs
00 9 * * * mon-sat /var/spool/ftpexts/bin/exe_get_x_wpr.sh >> /var/spool/ftpexts/outboundlogs/exe_get_x_wpr.log
00 9 * * * mon-sat /var/spool/ftpexts/bin/exe_get_y_wpr.sh >> /var/spool/ftpexts/outboundlogs/exe_get_y_wpr.log
00 9 * * * mon-sat /var/spool/ftpexts/bin/exe_get_z_wpr.sh >> /var/spool/ftpexts/outboundlogs/exe_get_z_wpr.log
当我手动执行脚本时,如下所示,它也可以顺利运行日志记录。
/var/spool/ftpexts/bin/exe_get_x_wpr.sh >> /var/spool/ftpexts/outboundlogs/exe_get_x_wpr.log
答案 0 :(得分:2)
crontab
正在尝试执行mon-sat
作为命令。
将星期几指定为crontab条目的第5个字段。你有*
,这意味着它可以在一周中的任何一天运行。删除第5个字段,使mon-sat
成为第5个字段。 (有趣的是,直到现在我才知道crontab会识别名字。)
更新:crontab(5) man page(在您的系统上输入man 5 crontab
类型)说:
名称也可用于“月”和“星期几”字段。使用 特定日期或月份的前三个字母(案例不是 物)。不允许使用范围或名称列表。
你说mon-sat
对你有用。一个快速的实验表明,名称的范围实际上是有效的,但由于文档说他们不被允许,我建议不要依赖于此。如果您希望工作在周一到周六运行,请写1-6
而不是mon-sat
。