crontab不能直接定時python指令碼,所以必須把python指令碼寫入shell指令碼中。
1.編寫shell指令碼
vim test.sh
注:test.py在/home/test路徑下,上面兩行得意思就是,先cd到/home/test目錄,然後指定python直譯器去執行test.py檔案,並
將標準輸出和非標準輸出(比如報錯資訊)儲存到file_log.txt中,最後的&表示將任務放到後台執行(不佔當前終端頁面)
python直譯器路徑檢視:
在終端輸入python,進入python直譯器,
匯入sys模組:import sys
執行:sys.executable
出現當前python直譯器路徑結果:'usr/bin/python'
2.給shell指令碼執行許可權
chmod +x test.sh
3.編寫定時任務
將shell指令碼寫入crontab中定時,命令crontab -e進入編輯,首次使用crontab會提醒讓你選編輯器,
select an editor. to change later, run 'select-editor'.
1. /bin/nano <---- easiest
2. /usr/bin/vim.basic
3. /usr/bin/vim.tiny
4. /bin/ed
習慣用vim的話就選2就可以了,
如果你想要你的程式每分鐘執行一次,可以寫成
*/1 * * * * sh /home/test/test.sh
每天6點執行一次
0 6 * * * sh /home/test/test.sh
每兩小時執行一次:
0 */2 * * * sh /home/test/test.sh
有關具體的定時問題請移步這裡:
Linux crontab不會執行
如在 opt目錄下寫了乙個test rontab.sh bin bash func test for crontab sign zijing 2017 09 28 ver 1.0 echo hello linux opt zijing.tt用crontab e新增的任務 1 root home zi...
linux crontab 實現每秒執行
linux crontab 命令,最小的執行時間是一分鐘。如需要在小於一分鐘內重複執行,可以有兩個方法實現。1.使用延時來實現每n秒執行 建立乙個php做執行動作,非常簡單,就是把當前時間寫入log。crontab e 輸入以下語句,然後 wq 儲存退出。php home fdipzone php ...
linux crontab 實現每秒執行
linux crontab 命令,最小的執行時間是一分鐘。如需要在小於一分鐘內重複執行,可以有兩個方法實現。1.使用延時來實現每n秒執行 建立乙個php做執行動作,非常簡單,就是把當前時間寫入log。php view plain copy file put contents home fdipzon...