欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2019年10月20日 16:42:43   作者:TENCENT CLOUD  
這篇文章主要給大家介紹了關(guān)于Linux中nohup與&的用法和區(qū)別的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用Linux具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧

示例 :

我們用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 &,效果如下所示:

首先會在終端顯示進(jìn)程號是2367

鍵入Ctrl + C,發(fā)出SIGINT信號,程序會繼續(xù)運行

關(guān)掉session,程序會收到一個SIGHUP信號,通過ps aux | grep loop_hello.py可以看到,進(jìn)程2367也關(guān)閉了

nohup

使用nohup python loop_hello.py,效果如下:

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

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

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

測試一下Ctrl +C

使用nohup啟動loop_hello.py,如果鍵入Ctrl+C ,程序收到SIGINT信號后,直接關(guān)閉了

&和nohup同時使用

使用nohup python loop_hello.py &運行程序,效果如下:

鍵入Ctrl + C,發(fā)送SIGINT信號 使用ps aux查看,進(jìn)程仍然存在

關(guān)閉session,發(fā)送SIGHUP信號 使用ps aux查看,進(jìn)程依然存在

如果想要終止進(jìn)程的話,只能使用kill了

總結(jié) :

使用&后臺運行程序:

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

使用nohup運行程序:

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

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

  1. 同時免疫SIGINT和SIGHUP信號

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

相關(guān)文章

  • Linux進(jìn)程間通信(IPC)的幾種方式總結(jié)

    Linux進(jìn)程間通信(IPC)的幾種方式總結(jié)

    進(jìn)程間通信是指至少兩個進(jìn)程或線程間傳送數(shù)據(jù)或信號的一些技術(shù)或方法,每個進(jìn)程都有自己的一部分獨立的系統(tǒng)資源,彼此是隔離的,為了能使不同的進(jìn)程互相訪問資源并進(jìn)行協(xié)調(diào)工作,才有了進(jìn)程間通信,本文就給大家介紹幾種Linux進(jìn)程間通信的方式,需要的朋友可以參考下
    2023-09-09
  • 詳解linux電源管理驅(qū)動編寫

    詳解linux電源管理驅(qū)動編寫

    這篇文章主要介紹了詳解linux電源管理驅(qū)動編寫,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • Linux CentOS7 vim多窗口編輯解讀

    Linux CentOS7 vim多窗口編輯解讀

    這篇文章主要介紹了Linux CentOS7 vim多窗口編輯解讀,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • Linux下關(guān)于mtrace工具排查內(nèi)存泄露的問題

    Linux下關(guān)于mtrace工具排查內(nèi)存泄露的問題

    這篇文章主要介紹了Linux下關(guān)于mtrace工具排查內(nèi)存泄露的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Apache 的 httpd.conf 中文詳解

    Apache 的 httpd.conf 中文詳解

    Apache 的 httpd.conf 中文詳解,需要的朋友可以參考下。
    2009-11-11
  • linux ubuntu中安裝、卸載和刪除python-igraph的方法教程

    linux ubuntu中安裝、卸載和刪除python-igraph的方法教程

    igraph是一個進(jìn)行圖計算和社交網(wǎng)絡(luò)分析的軟件包,支持python語言。下面這篇文章主要給大家介紹了關(guān)于在linux ubuntu中安裝、卸載和刪除python-igraph的方法教程,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。
    2017-11-11
  • Apache啟動提示錯誤undefined symbol: libiconv_open解決方法

    Apache啟動提示錯誤undefined symbol: libiconv_open解決方法

    這篇文章主要介紹了Apache啟動提示錯誤undefined symbol: libiconv_open解決方法,需要的朋友可以參考下
    2015-06-06
  • linux如何通過防火墻iptables做隔離端口的腳本

    linux如何通過防火墻iptables做隔離端口的腳本

    這篇文章主要介紹了linux如何通過防火墻iptables做隔離端口的腳本問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 修改sshd默認(rèn)端口的步驟

    修改sshd默認(rèn)端口的步驟

    ssh的的默認(rèn)端口是22,將它修改成別的值會更安全一些,修改步驟看下面介紹
    2014-01-01
  • CentOS 7.3配置Nginx虛擬主機的方法步驟

    CentOS 7.3配置Nginx虛擬主機的方法步驟

    這篇文章主要介紹了CentOS 7.3配置Nginx虛擬主機的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02

最新評論