1、nohup命令功能簡介
[root@vms002?opt]#?whatis?nohup
nohup?(1)???-?run?a?command?immune?to?hangups,?with?output?to?a?non-tty?#執行乙個不受hangups影響的命令,輸出到乙個非tty
nohup?(1p)??-?invoke?a?utility?immune?to?hangups???#呼叫不受hangups影響的實用程式????nohup命令可以將以忽略掛起訊號的方式執行起來,被執行的程式的輸出資訊將不會顯示到終端。無論是否將nohup命令的輸出重定向到終端,輸出都將附加到當前目錄下的nohup.out檔案中。如果當前目錄的nohup.out檔案不可寫,輸出重定向到$home/nohup.out檔案中。如果沒有檔案能建立或開啟以用於追加,那麼command引數指定的命令不可呼叫。如果標準錯誤是乙個終端,那麼把指定的命令寫給標準錯誤的所有輸出作為標準輸出重定向到相同的檔案描述符。
????nohup是永久執行的意思,而 & 是指在後台執行。就是指,用nohup執行的命令或程式可以永久的執行下去,和使用者終端沒有關係,例如我們斷開ssh連線都不會影響他的執行。
????注意:當我們用 & 執行的程式是守護程序時,我們斷開終端後這個守護程序會繼續在後台執行。如果這個程序不是守護程序時,當我們斷開終端後,這個程序也跟著斷開停止執行了。
2、nohup語法
nohup?[命令]
nohup?[選項]3、nohup選項
選項說明--help顯示此幫助資訊並退出--version顯示版本資訊並退出4、例項
????使用nohup命令時,如果指定了輸出檔案,那麼輸出資訊則輸出到指定的檔案中。如果沒有指定輸出檔案,則輸出資訊會輸出到當前目錄中的nohup.out檔案中。
????1)使用nohup命令檢視當前目錄下的檔案,並把輸出結果重定向到ls.log檔案中。
[root@vms002?opt]#?ls
a_??aa.txt??a^x.txt??rh??rh134??tmp
[root@vms002?opt]#?nohup?ls?>>?ls.log
nohup:?忽略輸入重定向錯誤到標準輸出端
[root@vms002?opt]#?ls
a_??aa.txt??a^x.txt??ls.log??rh??rh134??tmp
[root@vms002?opt]#?cat?ls.log?
a_aa.txt
a^x.txt
ls.log
rhrh134
tmp????2)使用nohup命令檢視當前目錄下的檔案,不指定輸出檔案,檢視輸出結果是否在當前目錄下的nohu.out檔案中。
[root@vms002?opt]#?ls
a_??aa.txt??a^x.txt??ls.log??rh??rh134??tmp
[root@vms002?opt]#?nohup?ls
nohup:?忽略輸入並把輸出追加到"nohup.out"
[root@vms002?opt]#?ls
a_??aa.txt??a^x.txt??ls.log??nohup.out??rh??rh134??tmp
[root@vms002?opt]#?cat?nohup.out?
a_aa.txt
a^x.txt
ls.log
nohup.out
rhrh134
tmp5、總結
????1)nohup命令是永久執行,忽略掛起訊號。&是指在後台執行。
????2)用 & 後台執行程式時,如果是守護程序,斷開終端則程式繼續執行,如果不是守護程序,斷開終端則程式也會被斷開停止執行。
????3)使用nohup命令時,如果指定了輸出檔案,輸出資訊則會附加到輸出檔案中,如果沒有指定輸出檔案,則輸出資訊會附加到當前目錄下的nohup.out檔案中,如果當前目錄的nohup.out檔案不可寫,輸出重定向到$home/nohup.out檔案中。
Linux之pidof命令 一杯美酒
1 pidof命令功能簡介 root vms002?whatis?pidof pidof?8 find?the?process?id?of?a?running?program.查詢正在執行的程式的程序id2 pidof命令常用選項 選項說明 s一次只顯示乙個程序號 c只顯示執行在root目錄下的程序...
一杯果汁和一杯水的故事
不知道各位小夥伴們有沒有聽過這樣乙個故事,講的是一杯果汁和一杯水如何在不改變兩杯液體的情況下,將兩杯液體互換。在你聽過的那個版本中,或許主角不是果汁,而是可樂。其實,這個小故事主要是為了說明乙個程式設計方面的小知識,兩變數交換值。之前,我以為故事的發展是這樣的,取來乙隻空杯子 新建乙個同型別的變數 ...
Linux學習之nohup命令詳解
在實際生產環境中,平時常常因為實際需求,要在後台掛起乙個指令碼或者是程序,如果是掛起程序還可以使用 xinetd 服務來進行守護程序,但是如果只是需要在後台掛起乙個指令碼的話,使用 xinetd 服務就有點不太合適了,還好 linux系統 中有提供乙個很好的不結束通話地執行命令 nohup 我們使用...