我有一个脚本,我需要01.00 am
每个月每天运行一次。这就是我使用 cron 选项卡所做的事情
#housekeeping
0 1 1 * * sh /product/abc/tools/housekeeper.sh -t ABC
如何检查它是否script
正在运行?我是否必须等到它运行或者是否有一个进程正在为此脚本运行,以便我可以确认它正在运行?
测试 crontab 脚本的常用方法遵循以下准则:
将时间模式设置为“从现在开始十分钟”。等十分钟。检查cron
您的脚本/应用程序的日志文件和日志文件是否有错误。
设置所需的时间模式
这样,您可以确保脚本有效。如果有什么东西坏了,那一定是因为时间模式。
您还应该将脚本的所有输出重定向到日志文件。cron
将发送一封邮件,其中包含脚本产生的任何输出,但这是很少需要的。
如果您总是将“${timestamp} Started”之类的条目添加到日志中,您可以在闲暇时检查脚本是否按预期工作。
如果你想要两者,那么你必须让你的脚本/应用程序自己编写日志文件(即在 中没有输出重定向crontab
)并将任何错误打印到stdout
;这将cron
发送一封电子邮件。
我使用的简单方法是在所需命令之前和之后将某些内容附加到特定文件,例如
*/2 * * * * (echo "Starting" >> ~/monitorCron.log; <Actual operation>; echo "End" >> ~/monitorCron.log;) > ~/cron.log 2>&1
这每 2 分钟运行一次,并将字符串附加到~/monitorCron.log
.
这与我在编程中所做的事情是一样的,无论何时何地我都会有疑问时编写打印语句。