nohup 命令
用途
語法
nohup { -p pid | Command [ Arg ... ] [ & ] }
描述
nohup 命令運行由 Command 參數和任何相關的 Arg 參數指定的命令,同時忽略所有的掛起(SIGHUP)信號,或者修改用 -p 選項指定的進程來忽略所有的掛起(SIGHUP)信號。
在註銷後還可以使用 nohup 命令運行後臺中的程序。要運行後臺中的 nohup 命令,添加 &(表示“and”的符號)到命令的尾部。
使用 -p pid 時,指定進程的輸出將不會重定向到 nohup.out。
標誌
-p pid | pid 是正在運行的進程的進程標識。nohup 命令修改指定進程來忽略所有的掛起(SIGHUP)信號。 |
退出狀態
126 | 可以查找但不能調用 Command 參數指定的命令。 |
127 | nohup 命令發生錯誤或不能查找由 Command 參數指定的命令。 |
否則,nohup 命令的退出狀態是 Command 參數指定命令的退出狀態。
示例
- 要在註銷後在後臺中運行命令,請輸入:
$ nohup find / -print &
670 $ Sending output to nohup.out
進程 ID 號更改爲 &(表示“and”的符號)啓動的後臺進程的 ID 號。消息 輸出發送到 nohup.out 通知您來自 find / -print 命令的輸出在 nohup.out 文件中。查看這些消息後可以註銷,即使 find 命令仍在運行。
- 要在後臺中運行命令並將標準輸出重定向到其他文件,請輸入:
$ nohup find / -print >filenames &
本例運行 find / -print 命令並且將輸出存儲到命名爲 filenames 的文件中。現在只顯示進程 ID 和提示:
677 $
因爲 nohup 命令需要片刻時間來啓動 Command 參數指定的命令,在註銷前請等待。如果太快註銷,Command 參數指定的命令可能根本沒運行。一旦 Command 參數指定的命令啓動,註銷就不會對其產生影響。
- 要運行多條命令,則使用 shell 過程。例如,如果寫 shell 過程:
neqn math1 | nroff > fmath1
且命名它爲 nnfmath1 文件,那麼可以爲 nnfmath1 文件中所有命令運行 nohup 命令,命令爲:
nohup sh nnfmath1
- 如果您將執行許可權分配到 nnfmath1 文件,發出此命令會得到相同的結果:
nohup nnfmath1
- 要在後臺中運行 nnfmath1 文件,請輸入:
nohup nnfmath1 &
- 要在 Korn shell 程序中運行 nnfmath1 文件,請輸入:
nohup ksh nnfmath1
- 要使運行的進程忽略所有掛起信號,請輸入:
nohup -p 161792