CentOS 7如何實現定時執行python指令碼
在CentOS下,可以使用crontab進行定時任務的處理。
一、crontab的安裝
預設情況下,CentOS 7中已經安裝有crontab,如果沒有安裝,可以通過yum進行安裝。
yum install crontabs
二、crontab的定時語法說明
corntab中,一行程式碼就是一個定時任務,其語法結構可以通過這個圖來理解。
字元含義如下:
* 代表取值範圍內的數字
/ 代表"每"
- 代表從某個數字到某個數字
,代表離散的取值(取值的列表)
一些常用的時間寫法如下:
* * * * * //每分鐘執行
* */4 * * * //每4小時執行
0 4 * * * //每天4點執行
0 12 */2 * * //每2天執行一次,在12點0分開始執行* * * * 0 //每週日執行
* * * * 6,0 //每週六、日執行
5 * * * * //每小時的第5分鐘執行
三、配置定時執行python指令碼
由於是需要定時執行python指令碼,所以應該使用如下命令:
python xxx.py
但是非常重要的一點是要用絕對路徑寫到命令,否則定時執行失敗。因此我們需要先弄清楚python的具體路徑。
我們在伺服器上有python2和python3兩個版本,通過如下命令來檢視其安裝路徑。
# which python //檢視系統預設安裝的python2的路徑
/usr/bin/python
# which python3 //檢視自行安裝的python3的路徑
/usr/bin/python3
用如下命令檢視當前系統中的定時任務列表
# crontab -l
對crontab進行編輯
# crontab -e
在其中增加如下的內容(每小時的00分執行一個獲取微信accesstoken的py指令碼),注意python的版本用到了3
00 * * * * /usr/bin/python3 /usr/local/wechatapi/wechat_accesstoken.py
完成後,可以重啟一下crontab的服務即可。
service crond restart
*我們在編寫py指令碼時也需要注意,其中如果有對檔案進行操作,也應該使用絕對路徑。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。