Linux 定時迴圈執行 python 指令碼

2021-08-26 23:35:43 字數 1681 閱讀 7855

本文主要介紹在linux環境下,定時迴圈執行python指令碼的兩種方法。

vim time.py

import time

while(true):

#time.sleep(1)

with open('time.log', 'a+') as logfile:

logfile.write('hello, world!\n')

time.sleep(1)

#break

在終端執行如下命令

nohup python time.py &
功能:實現了每秒將 "hello, world!" 字串,寫入當前目錄下的 time.log 檔案中。

原理:利用 python 的無限迴圈 while(true) ,並使用 time.sleep() 方法設定相應的秒數時停,最後通過 nohup 和 & 命令將指令碼掛在後台不結束通話的執行。

nohup command &:在後台執行 command,原程式的標準輸出和錯誤重定向到當前目錄下的 nohup.out 檔案中。如果當前目錄的 nohup.out 檔案不可寫,輸出重定向到 $home/nohup.out 檔案中。

檢視:通過 tail -f time.log 在當前終端追蹤顯示 time.log 檔案,可用 ctrl+c 中斷顯示。

中斷:通過 jobs 命令檢視當前後台中執行的任務,再使用 fg %n 將第n項掛到前台,最後用 ctrl+c 中斷任務。

或者通過 ps aux | grep python 命令檢視 python 程序,找到掛起的指令碼的 pid ,再使用 kill -9 pid 中斷掛起的指令碼。

拓展:nohup和&後台執行,程序檢視及終止

、linux的nohup命令的用法

vim time.py

with open('/home/titanxp/test/time.log', 'a+') as logfile:

logfile.write('hello, world!\n')

在終端中使用 crontab -e 命令建立如下任務

*/1 * * * * /usr/bin/python /home/titanxp/test/time.py
功能:實現了每分鐘將 "hello, world!" 字串,寫入指定目錄下的 time.log 檔案中。

原理:通過 crontab -e 命令建立週期性任務。要注意的是,指令碼中和指令碼路徑需要寫全路徑。

crontab 格式:minute hour day-of-month month-of-year day-of-week commands

檢視:通過 tail -f /var/log/cron.log 命令檢視 cron 日誌,可看到任務是否在執行。

拓展:crontab命令

、linux定時執行指令碼

方法一運用 python 的 time 庫實現簡單的定時迴圈執行指令碼,可適用變數需累加的情況。

方法二結合 cron 命令可實現複雜的定時迴圈迴圈執行指令碼。

**

python looper 時間迴圈python

我試圖在乙個while迴圈中計時乙個while迴圈,執行它所需的總時間,並記錄每次迴圈所需的時間。如果可能的話,我需要一種使用我的 來實現這一點的方法,或者對我可能還不知道的不同概念開放。import random import time import sys def main loopercpu ...

js 用js定時迴圈執行語句和定時延緩執行

最近在專案中,需要使用到站內信的訊息推送方式在 中給使用者推送訊息,就是在頁面有下角推送乙個彈窗,這裡需要我們定時去後台查詢是否有訊息推送過來,所以需要在js層面進行定時執行查詢的任務。這裡用到了js的兩個函式方法,乙個是setinterval,乙個是settimeout,這兩個函式在使用上要如何處...

js 用js定時迴圈執行語句和定時延緩執行

最近在專案中,需要使用到站內信的訊息推送方式在 中給使用者推送訊息,就是在頁面有下角推送乙個彈窗,這裡需要我們定時去後台查詢是否有訊息推送過來,所以需要在js層面進行定時執行查詢的任務。這裡用到了js的兩個函式方法,乙個是setinterval,乙個是settimeout,這兩個函式在使用上要如何處...