Linux 後台執行程式

2021-09-02 17:33:56 字數 482 閱讀 4466

nohup ./mqtt>/dev/null 2>&1 &

&的意思是在後台執行, 在執行 ./a.out & 的時候, 即使你用ctrl c,  那麼a.out照樣執行(因為對sigint訊號免疫)。 但是要注意, 如果你直接關掉shell後, a.out程序同樣消失。 

nohup的意思是忽略sighup訊號, 所以當執行nohup ./a.out的時候, 關閉shell, 那麼a.out程序還是存在的(對sighup訊號免疫)。 但是, 要注意, 如果你直接在shell中用ctrl c, 那麼, a.out程序也是會消失的(因為對sigint訊號不免疫)

作業系統中有三個常用的流:

0:標準輸入流 stdin

1:標準輸出流 stdout

2:標準錯誤流 stderr

一般當我們用 > console.txt,實際是 1>console.txt的省略用法;< console.txt ,實際是 0 < console.txt的省略用法。

Linux後台執行程式

shell command dev null 2 1 最後乙個符號 意思是讓程式在後台執行。dev null 的作用是將標準輸入轉向null,這樣就忽略當前的指令碼標準輸出。2 1 的作用是將標準錯誤連線至標準輸出,也將被忽略。一直不明白1 2的作用。原來!作業系統預設指定3個檔案 0標準輸入 1標...

Linux後台執行程式

在我們平常的時候執行程式的時候會產生很多的資訊,這些資訊有時候有用,有時候沒用,不過這些資料都會在該程式的log中儲存,所以把這些資訊放在前台就不是很好。我們可以將指令碼放在後台執行,不要將這些資訊顯示出來。將shell放入後台執行 比如 指令碼名稱 storm.sh 後台執行 storm.sh 這...

Linux後台執行程式

jobs 檢視任務,返回任務編號n和程序號 bg n 將編號為n的任務轉後台執行 fg n 將編號為n的任務轉前台執行 ctrl z 掛起當前任務 ctrl c 結束當前任務注 如果要使在前台執行任務放到後台執行,則先要用ctrl z掛起該任務,然後用bg使之後臺執行。到後台執行的程序,其父程序還是...