linux 中 和nohup的作用

2021-08-28 07:08:53 字數 898 閱讀 5385

在linux終端或控制台上執行命令時,可能不希望指令碼佔住螢幕需要在後台執行指令碼,有幾種方法讓指令碼在後台執行:

1.&當在前台執行某個作業時,終端被該作業佔據;可以在命令後面加上& 實現後台執行。例如:sh test.sh & 

需要使用者互動的命令不要放在後台執行,不過,作業在後台執行一樣會將結果輸出到螢幕上,如果放在後台執行的作業會產生大量的輸出,最好使用下面的方法把它的輸出重定向到某個檔案中:

command  >  out.file  2>&1  &
這樣,所有的標準輸出和錯誤輸出都將被重定向到乙個叫做out.file 的檔案中。

成功地提交程序以後,會顯示出乙個程序號,可以用它來監控或殺死該程序。(ps -ef | grep 程序號 或者 kill -9 程序號)

2.nohup

使用&命令後,作業被提交到後台執行,當前控制台沒有被占用,但是一但把當前控制台關掉(退出帳戶時),作業就會停止執行。nohup命令可以在你退出帳戶之後繼續執行相應的程序。nohup就是不掛起的意思( no hang up)。該命令的一般形式為:

nohup command &
使用nohup命令提交作業,那麼在預設情況下該作業的所有輸出都被重定向到乙個名為nohup.out的檔案中,除非另外指定了輸出檔案:

nohup command > myout.file 2>&1 &
使用nohup之後有可能在當前賬戶非正常退出或結束的時候,命令還是會自己結束。所以在使用nohup命令後台執行後,需要使用exit正常退出當前賬戶,這樣才能保證命令一直在後台執行。

2>&1解析:

command >out.file 2>&1 &

define中 和 的作用

define f a,b a b define d a a define s a d a void main void 輸出結果 f a,b ab分析 把兩個符號連起來 a指把a當成符號,就是把 後面的看成字串 和 操作符是和 define巨集使用的.使用 使在 後的首個引數返回為乙個帶引號的字串....

define中 和 的作用

define f a,b a b define d a a define s a d a void main void 輸出結果 f a,b ab分析 把兩個符號連起來 a指把a當成符號,就是把 後面的看成字串 和 操作符是和 define巨集使用的.使用 使在 後的首個引數返回為乙個帶引號的字串....

python 中 和 的作用

先舉個 使用的例子 data def foo kwargs print kwargs foo a 1,b 2 foo data 這種呼叫data的方法會報錯 可以看出,代表了給函式傳入引數的方式是 a 1形式,即 引數名 引數值,並且不管傳入幾個值,該函式都會轉化為字典處理 再舉乙個 的使用的例子 ...