1. 程式人生 > >nohup和&的區別

nohup和&的區別

als ima ssh連接 就是 常用 例子 details 運行命令 終端

nohup是永久執行


&是指在後臺運行

運行 nohup --help
Run COMMAND, ignoring hangup signals. 可以看到是“運行命令,忽略掛起信號”

就是指,用nohup運行命令可以使命令永久的執行下去,和用戶終端沒有關系,例如我們斷開SSH連接都不會影響他的運行,註意了nohup沒有後臺運行的意思;&才是後臺運行

&是指在後臺運行,但當用戶推出(掛起)的時候,命令自動也跟著退出

那麽,我們可以巧妙的吧他們結合起來用就是
nohup COMMAND &
這樣就能使命令永久的在後臺執行

舉個例子nohup tail -f nohup.out

然後退出登錄,再連接,用ps -ef 你會還能看到在運行
ps -ef
root 3457 1 0 18:20 ? 00:00:00 tail -f nohup.out

另外,nohup執行後,會產生日子文件,把命令的執行中的消息保存到這個文件中,一般在當前目錄下,如果當前目錄不可寫,那麽自動保存到執行這個命令的用戶的home目錄下,例如root的話就保存在/root/下

這個我們常在運行命令和腳本中常用到的

轉自:nohup和&的區別 http://bbs.nanjimao.com/thread-470-1-1.html (出處: 南極貓)

nohup和&的區別