在應用Unix/Linux時,我們一般想讓某個程序在后臺運行,于是我們將常會用 & 在程序結尾來讓程序自動運行。比如我們要在后臺運行一個aaa.sh的腳本: [root @CC02 /]# ./aaa.sh &
可是當我們注銷或者屏保后,這個腳本就會自動停止,這時我們就需要nohup命令,怎樣使用nohup命令呢?請看: [root@mail01 script]# nohup ./aaa.sh &
注意:只有當虛擬終端是 $ 或者 # 時候(如下圖所示),才可關閉此終端,否則可能導致已經(jīng)啟動的進程被關閉(如果程序持續(xù)輸出信息而沒有出現(xiàn) $ 或 #,按一下enter即可) 原程序的的標準輸出被自動改向到當前目錄下的nohup.out文件,起到了log的作用。 [root@mail01 script]# ll
附:nohup命令參考 nohup 命令 用途:不掛斷地運行命令。 語法:nohup Command [ Arg … ] [ & ] 描述:nohup 命令運行由 Command 參數(shù)和任何相關的 Arg 參數(shù)指定的命令,忽略所有掛斷(SIGHUP)信號。在注銷后使用 nohup 命令運行后臺中的程序。要運行后臺中的 nohup 命令,添加 & ( 表示”and”的符號)到命令的尾部。 無論是否將 nohup 命令的輸出重定向到終端,輸出都將附加到當前目錄的 nohup.out 文件中。如果當前目錄的 nohup.out 文件不可寫,輸出重定向到 $HOME/nohup.out 文件中。如果沒有文件能創(chuàng)建或打開以用于追加,那么 Command 參數(shù)指定的命令不可調用。如果標準錯誤是一個終端,那么把指定的命令寫給標準錯誤的所有輸出作為標準輸出重定向到相同的文件描述符。 退出狀態(tài):該命令返回下列出口值: 126 可以查找但不能調用 Command 參數(shù)指定的命令。 127 nohup 命令發(fā)生錯誤或不能查找由 Command 參數(shù)指定的命令。 否則,nohup 命令的退出狀態(tài)是 Command 參數(shù)指定命令的退出狀態(tài)。 nohup命令及其輸出文件 nohup命令:如果你正在運行一個進程,而且你覺得在退出帳戶時該進程還不會結束,那么可以使用nohup命令。該命令可以在你退出帳戶/關閉終端之后繼續(xù)運行相應的進程。nohup就是不掛起的意思( n ohang up)。 該命令的一般形式為:[root @apps /]# nohup command &
使用nohup命令提交作業(yè) 如果使用nohup命令提交作業(yè),那么在缺省情況下該作業(yè)的所有輸出都被重定向到一個名為nohup.out的文件中,除非另外指定了輸出文件: nohup command > myout.file 2>&1 & 在上面的例子中,輸出被重定向到myout.file文件中。 使用 jobs 查看任務。 使用 fg %n 關閉。 |
|