用途:LINUX命令用法,不掛斷地運行命令。
語法:nohup Command [ Arg … ] [& ]
描述:nohup 命令運行由 Command 參數和任何相關的 Arg 參數指定的命令,忽略所有掛斷(SIGHUP)信號。在注銷後使用 nohup 命令運行後台中的程序。要運行後台中的 nohup 命令,添加 & ( 表示「and」的符號)到命令的尾部。
例子: nohup ./startWeblogic.sh & 意思是即使退出ssh界面,命令仍然在後台執行,並且列印過程日誌到nohup.out,當然也可以將nohup.out的輸出轉向到其他文件,高級應用請參考擴展閱讀。
如上文所述出現了超大號的文件簡直是令人討厭的事情,而且nohup.out會一直一直自己增長下去,如果你的伺服器硬碟不給力的話,很容易把應用也掛掉(硬碟沒空間 ,啥都玩不轉),但是又不能一味的直接刪。因為直接刪除,可能會造成應用無法列印後續的錯誤日誌,該問題常見於weblogic伺服器,jboss伺服器等這些大型中間件,這個在生產環境上要尤為注意。
可以使用以下兩種方法實現: 不停止WEB服務就可以清空nohup.out的命令 。
不用擔心網上所說的性能問題,通常2/3 個G的文件都是1-2秒執行完畢
以下是定義日誌列印級別,除了高於級別2的告警信息記錄到log文件外,其餘直接不記錄
可以用來指定需要重定向的標准輸入或輸出。例如,將某個程序的錯誤信息輸出到log文件中:./program 2>log。這樣標准輸出還是在屏幕上,但是錯誤信息會輸出到log文件中。另外,也可以實現0,1,2之間的重定向。2>&1:將錯誤信息重定向到標准輸出。
Linux下還有一個特殊的文件/dev/null,它就像一個無底洞,所有重定向到它的信息都會消失得無影無蹤。這一點非常有用,當我們不需要回顯程序的所有信息時,就可以將輸出重定向到/dev/null。
② linux中報錯「把輸出追加到nohup.out」什麼意思
這不是報錯,只是提示,後台執行程序的輸出都被重定向到nohup.out文件。
③ nohup命令詳解是什麼
nohup 命令運行由 Command 參數和任何相關的 Arg 參數指定的命令,忽略所有掛斷(SIGHUP)信號。在注銷後使用 nohup 命令運行後台中的程序。要運行後台中的 nohup 命令,添加 & ( 表示「and」的符號)到命令的尾部。
如果不將 nohup 命令的輸出重定向,輸出將附加到當前目錄的 nohup.out 文件中。如果當前目錄的 nohup.out 文件不可寫,輸出重定向到 $HOME/nohup.out 文件中。
運用須知
如果沒有文件能創建或打開以用於追加,那麼 Command 參數指定的命令不可調用。如果標准錯誤是一個終端,那麼把指定的命令寫給標准錯誤的所有輸出作為標准輸出重定向到相同的文件描述符。
如果正在運行一個進程,而且覺得在退出賬戶時該進程還不會結束,那麼可以使用 nohup 命令。該命令可以在你退出帳戶/關閉終端之後繼續運行相應的進程。nohup 就是不掛斷的意思( no hang up)。
④ weblogic中nohup.out文件是自動生成的嗎
當然不是了,nohup是linux下的一個命令,通過nohup啟動weblogic時如果不指定輸出的文件,會自動輸出到nohup.out文件中
⑤ linux 系統日誌隱藏文件.nohup.out.swp可不可刪除
linux nohup.out文件過大吧
Linux下還有一個抄特殊的文件/dev/null,它就像一個無底洞,所有重定向到它的信息都會消失得無影無蹤。這一點非常有用,當我們不需要回顯程序的所有信息時,就可以將輸出重定向到/dev/null
查詢Linux命令《linux就該這么學》
由於使用nohup時,會自動將輸出寫入nohup.out文件中,如果文件很大的話,nohup.out就會不停的增大,這是我們不希望看到的,因此,可以利用/dev/null來解決這個問題。
nohup ./program >/dev/null 2>log &
如果錯誤信息也不想要的話:
nohup ./program >/dev/null 2>&1 &