歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> 學習Linux

Linux下使用cron讓Python程序持久化運行,cronpython

Linux下使用cron讓Python程序持久化運行,cronpython


熱度1 評論 55 www.BkJia.Com  網友分享於:  2017-03-02 04:03:25     浏覽數16396次

Linux下使用cron讓Python程序持久化運行,cronpython


正常情況下,一個python程序如果希望實現一直運行,不出錯不奔潰是很難的,即使編譯為可持續文件也是一樣

幸運的是很多需求並不是需要24小時不間斷運行,而是每隔一段時間運行一次即可

Linux系統自帶的cron就為我們實現了這種可能:

輸入

crontab -e

這時候就會展示已經設置好的任務,如果你之前沒有設置過,那這裡就是空的

設置你要運行的任務

* * * * * your-task

這裡的參數說明如下:

 

在設置後,系統就會自動運行這個任務,但是有些童鞋可能會遇到這樣的錯誤:

No module named '****'

而你直接在終端輸入python,然後import這個模塊,卻又是Ok的,

這個問題困擾了我不少時間,最後發現可能的原因是系統中存在多個python版本

而使用cron調用的時候恰好不是你想要的那個,解決的辦法也很簡單

把詳細的python路徑寫全就行了

* * * * * /root/anaconda3/bin/python /root/btc.py

注意前面的紅字部分路徑就是你需要的python版本的實際路徑

 

如果需要把任務日志輸出到指定的文件,可以這樣:

* * * * * /root/anaconda3/bin/python /root/btc.py >> /root/error.txt

 

下面是一些關於cron的使用示例

* * * * * XXX 每分鐘運行。
0 * * * * XXX 每小時運行。
0 0 * * * XXX 每天零點運行。
0 9,18 * * * XXX在每天的9AM和6PM運行。
0 9-18 * * * XXX 在9AM到6PM的每個小時運行。
0 9-18 * * 1-5 XXX 周一到周五的9AM到6PM每小時運行。
*/10 * * * * XXX 每10分鐘運行。

 

cron的使用場景非常多,例如:

定期備份你的文件,定期備份數據庫並發送到你的郵箱,定期XXX

基本上跟你的編程語言一結合,定時定期類的任務都能完成

http://www.bkjia.com/Linuxjc/1196640.htmlwww.bkjia.comtruehttp://www.bkjia.com/Linuxjc/1196640.html

Copyright © Linux教程網 All Rights Reserved