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

來源:互聯網
上載者:User

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

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.