我有一个python脚本,上传到一个全天候运行的web服务器上。我想自动执行此脚本,以便它每小时自动运行一次。这可能吗?我碰到了cron工作的东西,但我不熟悉如何实现这一点。任何帮助或例子都会有所帮助。自动化Python脚本
回答
打开你的cron作业文件,
crontab -e
中加入这一行
* 0 * * * /path/to/my/script
我会建议使用bash脚本或东西来检查进程是否已经在运行。
if [ `ps -u USERNAME | grep -i PROCESSNAME | wc -l` -lt 1 ]
then
nohup python main.py &
fi
编辑
键入命令crontab -e
然后按回车键。你的屏幕会变成黑色,并附带一排~
。按i
您现在处于插入模式。请输入* 0 * * * /path/to/my/script
,确保这是您脚本的绝对路径。按Esc
,然后输入:x
,然后按回车。这应该保存cron文件,也就是假设vi
或vim
是cron文件的默认编辑器。
旁注
另外,还要确保你的脚本是可执行的,chmod 777 myscript.py
应该做的伎俩,但是请使用chmod和权限熟悉。
另外请确保你的#/python/version/to/use
作为python文件的第一行。
第一:问问自己数据应该是动态而不是静态的。通过数据库或cgi脚本可以更好地访问动态数据。
第二:请仔细阅读说明书。 crontab是用于管理cron作业的程序。网络搜索可以给你更深入的信息(知道哪个钉子是战斗的一半)。 man crontab在计划中没有太多帮助,但是如果它不按照您的期望编辑文件,可以指出程序的指针。
第三:通过执行'which python'并将描述符添加到文件的顶部来确定python的运行位置。在我的情况下,它是#!/ usr/bin/python
第四:将你的pyhton脚本放在适当的地方,或许/ usr/local/sbin /如果它足够重要并且你有权限。使用文件上的chmod 775使您的文件可执行。运行该文件以确保它按预期执行。
第五:使用crontab -e编辑cron作业表如果你不能像自己一样运行它,请尝试在sudo下运行它(例如sudo crontab -e)。
第六:添加行0 * * * * /myPath/myfile.py
这将运行每分钟变化为00维基百科说@hourly应该工作时间,但我从来没有尝试过。
格式如下
* * * * * command to be executed
┬ ┬ ┬ ┬ ┬
│ │ │ │ │
│ │ │ │ │
│ │ │ │ └───── day of week (0 - 6) (0 is Sunday)
│ │ │ └────────── month (1 - 12)
│ │ └─────────────── day of month (1 - 31)
│ └──────────────────── hour (0 - 23)
└───────────────────────── min (0 - 59)
第七:测试测试测试。
crontab -l列出了cron作业规范。
当cron执行时,可能必须存在环境变量,例如$ PYTHONPATH。
如果crontab中有6个字段,则第一个字段可能是秒。
有一天你想记录seomthing的输出。阅读关于在/ var/logs中创建日志文件目录以及如何使用/etc/logrotate.d/文件进行管理的信息。
这真的很有帮助。谢谢。 – khan
- 1. 自动化Python脚本
- 2. 如何自动化自动化我的Python脚本?
- 3. Telnet自动化/脚本
- 4. 自动化脚本Maximo中
- 5. Shell脚本自动化
- 6. 自动化Maven脚本
- 7. 自动化SQL脚本
- 8. 自动化PHP脚本
- 9. python自动重启脚本
- 10. Python脚本自动关闭
- 11. 自动更新python脚本
- 12. 自动化/脚本化Wifi连接
- 13. 从python自动运行python脚本
- 14. 自动开机启动python脚本(RPI)
- 15. 自动启动一个python硒脚本
- 16. Python脚本重复自动启动
- 17. 启动后自动运行python脚本?
- 18. 优化Python脚本
- 19. 如何使用Python自动化网页抓取脚本?
- 20. 使Python脚本自动化的最佳方式
- 21. Python Selenium:如何让自动化脚本中的人机交互?
- 22. 使用Python API的OpenStack自动化脚本Swift
- 23. 通过代理安装python包的自动化脚本?
- 24. 我们如何自动化Python脚本中的用户交互
- 25. 如何自动化的几个相互依存的Python脚本
- 26. Python自动化
- 27. 屏幕抓取:自动化vim脚本
- 28. Shell脚本终端中的自动化
- 29. SQLSafe备份还原脚本自动化
- 30. 数据库监控脚本自动化
你的问题是关于['cron'](http://en.wikipedia.org/wiki/Cron#Examples)吗? – chrisaycock
不是python特有的。站内搜索。 –
cron真的是这里最好的答案。肯定有一条学习曲线,但其他任何工具都会变得过于矫枉过正,并且可能是一个可疑附加值的cron包装。 – mattbornski