您好,登錄后才能下訂單哦!
示例 :
我們用python代碼loop_hello.py做示例,代碼的作用是循環(huán)輸出循環(huán)次數(shù)和hello world!,每次輸出后sleep 1秒
示例代碼如下:
import time def main(): i = 0 while True: i += 1 print('%d: hello world!' %(i)) time.sleep(1) if '__main__' == __name__: main()
運行l(wèi)oop_hello.py,輸出結(jié)果如下:
程序每隔一秒會在終端輸出一個字符串,此時如果鍵入Ctrl+C ,程序會收到一個SIGINT信號,如果不做特殊處理,程序的默認行為是終止(如上圖)。
&
使用 python loop_hello.py &,效果如下所示:
首先會在終端顯示進程號是2367
鍵入Ctrl + C,發(fā)出SIGINT信號,程序會繼續(xù)運行
關(guān)掉session,程序會收到一個SIGHUP信號,通過ps aux | grep loop_hello.py可以看到,進程2367也關(guān)閉了
nohup
使用nohup python loop_hello.py,效果如下:
如果關(guān)掉session,程序會不會關(guān)閉呢?
測試一下Ctrl +C
使用nohup啟動loop_hello.py,如果鍵入Ctrl+C ,程序收到SIGINT信號后,直接關(guān)閉了
&和nohup同時使用
使用nohup python loop_hello.py &運行程序,效果如下:
鍵入Ctrl + C,發(fā)送SIGINT信號 使用ps aux查看,進程仍然存在
關(guān)閉session,發(fā)送SIGHUP信號 使用ps aux查看,進程依然存在
如果想要終止進程的話,只能使用kill了
總結(jié) :
使用&后臺運行程序:
使用nohup運行程序:
平日線上經(jīng)常使用nohup和&配合來啟動程序:
好了,以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。