我正在尝试安排一个 python 脚本每分钟或每小时运行一次。
到目前为止我做了什么:
crontab -e
在我添加的 crontab 文件中
* * * * * /usr/bin/python /path/to/script/script.py
保存文件后,我收到消息
crontab:安装新的 crontab
但是 crontab 没有运行脚本。
有任何想法吗?
谢谢, 迪兹
我正在尝试安排一个 python 脚本每分钟或每小时运行一次。
到目前为止我做了什么:
crontab -e
在我添加的 crontab 文件中
* * * * * /usr/bin/python /path/to/script/script.py
保存文件后,我收到消息
crontab:安装新的 crontab
但是 crontab 没有运行脚本。
有任何想法吗?
谢谢, 迪兹
我发现了问题,我将把解决方案放在这里,也许它可以帮助某人。我尝试按照 Rafal 的建议输入 crontab -e * * * * * /usr/bin/python /path/to/script/script.py >>/tmp/script.out 2>&1 但输出为空白。
昨晚我读了很多关于 crontab 的内容,我发现如果您使用带有 crontab 的脚本并将输出写入某个文件,您将需要修改脚本并输入文件的确切路径。如果您不输入完整路径,则脚本将在您手动运行时起作用。如果您使用 crontab 运行该脚本,它仍然可以工作,但它不知道将其输出放在哪里。
所以修改
with open('output.txt', 'a') as f
和
with open('/path/to/file/output.txt', 'a') as f
为我完成了这项工作。
谢谢, 迪兹
根据脚本(例如向控制台打印消息的脚本),您将无法区分脚本是否正在运行。
您可以通过在控制台中键入以下内容来确保 crontab 正常运行:
tail -f /var/log/syslog