国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

Linux中nohup與&的用法和區(qū)別詳解

2024-08-28 00:02:42
字體:
供稿:網(wǎng)友

示例 :

我們用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信號,如果不做特殊處理,程序的默認(rèn)行為是終止(如上圖)。

&

使用 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,效果如下:

前臺沒有出現(xiàn)進程號 有一個“忽略輸入并把輸出追加到"nohup.out"”的提示 hello的輸出也沒有出現(xiàn)在前臺

如果關(guān)掉session,程序會不會關(guān)閉呢?

使用ps aux | grep loop_hello查看進程號 關(guān)掉session,程序會收到一個SIGHUP信號 再次使用ps aux | grep loop_hello,發(fā)現(xiàn)進程仍然存在 kill掉進程

測試一下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é) :

使用&后臺運行程序:

結(jié)果會輸出到終端 使用Ctrl + C發(fā)送SIGINT信號,程序免疫 關(guān)閉session發(fā)送SIGHUP信號,程序關(guān)閉

使用nohup運行程序:

結(jié)果默認(rèn)會輸出到nohup.out 使用Ctrl + C發(fā)送SIGINT信號,程序關(guān)閉 關(guān)閉session發(fā)送SIGHUP信號,程序免疫

平日線上經(jīng)常使用nohup和&配合來啟動程序:

同時免疫SIGINT和SIGHUP信號

好了,以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對武林網(wǎng)之家的支持。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 临颍县| 清原| 秦皇岛市| 绍兴县| 仪陇县| 眉山市| 湘阴县| 柳州市| 镶黄旗| 武川县| 成都市| 康平县| 鹤壁市| 陕西省| 阿图什市| 青冈县| 东明县| 龙门县| 鹤峰县| 乳山市| 玉门市| 呈贡县| 淳化县| 偏关县| 于田县| 揭西县| 高阳县| 屯昌县| 哈尔滨市| 浦北县| 弥勒县| 方城县| 南溪县| 梧州市| 和平县| 民权县| 辛集市| 元朗区| 新化县| 乌海市| 西和县|