Python 是否每5分钟运行一次cronjob,但在第一次执行后停止?
我有一个python脚本,它可以检查服务器是启动还是关闭,如果服务器关闭,它会发送一封电子邮件和一些系统日志 我想要的是每5分钟检查一次服务器,因此我将cronjob放在如下位置: */5****/python/uptime.sh 因此,每当服务器停机时,它都会发送一封电子邮件。但我希望脚本在第一次执行后停止执行(发送更多电子邮件) 有人能帮我解决这个问题吗?Python 是否每5分钟运行一次cronjob,但在第一次执行后停止?,python,cron,crontab,Python,Cron,Crontab,我有一个python脚本,它可以检查服务器是启动还是关闭,如果服务器关闭,它会发送一封电子邮件和一些系统日志 我想要的是每5分钟检查一次服务器,因此我将cronjob放在如下位置: */5****/python/uptime.sh 因此,每当服务器停机时,它都会发送一封电子邮件。但我希望脚本在第一次执行后停止执行(发送更多电子邮件) 有人能帮我解决这个问题吗? 谢谢 简单的解决方案是,您可以设置一些Bash env变量MONITORING=true,并让python脚本使用os.environ[
谢谢 简单的解决方案是,您可以设置一些Bash env变量
MONITORING=true
,并让python脚本使用os.environ[“MONITORING”]
检查该变量。如果该变量为true
,则检查服务器是否启动或关闭,否则不检查任何内容。一旦发现服务器停机,请从脚本中将该变量设置为false
,如os.environ[“MONITORING”]=false
。因此,在您再次设置env变量之前,它不会发送电子邮件true
- 编写一个永远运行的空
脚本(例如:“mailtrigger.py”)While True
- 在无限循环中使用shell中的
运行它-nohup mailtrigger.py
- 服务器关闭后,检查mailtrigger.py是否正在运行,如果
然后不终止mailtrigger.py(
)终止进程id
由于mailtrigger.py未运行,您的下一次迭代将不会发送邮件。您是否尝试在脚本中设置条件以检查服务器是否已启动,或者是否确实要删除cronjob?脚本所做的只是检查服务器是否已启动或关闭。我只想对cronjob设置一个限制,如果脚本执行(以防服务器宕机),那么我应该一直发送电子邮件,直到服务器备份。取而代之的是一封电子邮件。