繁体   English   中英

通过crontab执行python脚本

[英]python script execution through crontab

我的python脚本每分钟不会通过crontab运行时会发生什么情况。 我的脚本具有执行权限,然后在python中调用其他两个脚本。


This is the content of my crontab (#crontab -l):
*/1 * * * * /usr/bin/rsm/samplesMonitor.py
感谢大伙们。

检查/var/log/syslog中的错误。

DIAGNOSTICS
       cron requires that each entry in a crontab end in a 
       newline character. If the last entry in a crontab is 
       missing a newline (ie, terminated by  EOF),  cron  will 
       consider the crontab (at least partially) broken. A 
       warning will be written to syslog.

更新:根据您的日志消息,脚本正在运行,但返回错误代码。 如果您安装了邮件代理,Cron将通过电子邮件将输出结果发送给您。

尝试以下任一方法:

  1. 安装邮件代理,例如: apt-get install exim4
  2. 更改您的cron行以记录到文件,如下所示:

     * * * * * /usr/bin/rsm/samplesMonitor.py 2>&1 >> /tmp/script.log 

更新2:我重新阅读了您的问题,这让我想到您可能正在遇到python导入问题。 您说您的脚本调用了另外两个脚本。 我的建议是从/测试运行脚本。 Python具有默认行为,可在当前工作目录中找到导入,因此请确保您的脚本可以在任何路径位置运行。

在crontab中,可以通过从另一个Shell进程中调用脚本来设置启动工作目录。 例如:

bash -c "cd THE_WORKING_DIR;/usr/bin/rsm/samplesMonitor.py"

我相信应该是*/1 ,而不是*\\1

它应该是*/1而不是*\\1 (正斜杠而不是反斜杠)。 另外,请确保路径正确。 / usr / bin下通常没有子目录。

如果您希望它每分钟运行一次,请执行此操作

* * * * * /usr/bin/rsm/samplesMonitor.py

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM