我是 Linux 新手,有人告诉我可以使用一个名为 cron job 的功能来运行我每 10 分钟执行一次的 python 脚本。问题是 python 脚本没有运行。似乎没有一个明确的方法来知道我是否正确地格式化了作业,但无论如何我已经尝试了许多路径但无济于事。
因为我很新,所以我会向您展示我采取的步骤。在我的 RasPi 上,我首先输入“crontab -e”并得到如下字段:
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
跳过更多帮助文本
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
# m h dom mon dow command
我在底部添加了我的行,而不删除上面的文本。
*/10 * * * * ~/WeatherProject/HOURLY/windDirExtract.py
上面的方法不起作用,其他人也做了类似的事情,但仍然没有成功。
*/10 * * * * /home/MyName/WeatherProject/HOURLY/windDirExtract.py
然后我尝试了不同的排列,但一无所获。
*/10 * * * * /home/MyName/WeatherProject/HOURLY python windDirExtract.py
*/10 * * * * /home/MyName/WeatherProject/HOURLY windDirExtract.py
如果我不清楚,我会进行任何编辑,但第一个大问题是我什至可以使用 Cron Job 运行简短的小 python 脚本,还是我只是得到了不好的建议?
答案1
首先确保您的命令可以在命令行中运行
/usr/bin/python /home/MyName/WeatherProject/HOURLY/windDirExtract.py
然后在 crontab 中尝试同样的操作
*/10 * * * * /usr/bin/python /home/MyName/WeatherProject/HOURLY/windDirExtract.py
答案2
您的脚本似乎工作正常,cron
但运行它不会按预期工作。例如:
$ ./windDirExtract.py
START
2013-09-23 22:32:39.376584
283
运行此脚本会产生上述输出。但随着cron
输出需要去某个地方。我建议将其写到一个文件中开始,如下所示cron
:
*/10 * * * * /home/MyName/WeatherProject/HOURLY/windDirExtract.py >> /home/MyName/weather.log
这会将输出捕获到日志文件中,weather.log
您可以在其中查看它以查看是否cron
正常运行。执行上述操作将会每 10 分钟将脚本的输出连续附加到日志文件中,如下所示:
START
2013-09-23 22:32:39.376584
283
START
2013-09-23 22:42:39.376584
283
...