【发布时间】:2016-07-22 05:14:09
【问题描述】:
我正在尝试使用 crontab 让 Python 脚本每小时运行一次,但我似乎无法让它工作。
如果我从终端手动运行,Python 程序运行良好并完成。
$ python /home/pi/Documents/Project/Base_Prog.py
我的 crontab 是这样设置的:
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow command
@reboot /usr/bin/python /home/pi/Documents/Project/Base_Prog.py
0 * * * * /usr/bin/python /home/pi/Documents/Project/Base_Prog.py
0 * * * * /usr/bin/python /home/pi/Documents/SimpleCronTest.py
让我澄清一下,我遵循了建议 on this similar post. 我尝试了创建输出文件的简单测试脚本并且有效。但是在具有相同设置的相同 crontab 下,我的程序没有完成。
有趣的一点是,当脚本即将启动时使用 TOP,Python 窗口会短暂弹出,然后再次消失。所以我认为 cron 至少可以正常工作。
我已添加:
#!/usr/bin/env
Base_Prog.py 文件顶部的 Python 行。 我的 Python 程序是一个 API 抓取工具,它从一个文件中查找其输入并将结果写入另一个文件,项目目录中的所有文件都具有使用 chmod 777 的完全写入权限。
我不知道是什么原因造成的。
更新
简单测试和我的程序在 syslog 中的输出日志是:
Apr 2 14:29:01 raspberrypi CRON[1455]: (pi) CMD (python /home/pi/Documents/Project/Base_Prog.py)
Apr 2 14:29:01 raspberrypi CRON[1456]: (pi) CMD (python /home/pi/Documents/CronTest.py)
【问题讨论】:
-
你的脚本做了什么样的工作?
-
把你的脚本代码放在这里