2010年12月13日 星期一

[Linux 命令] nohup : 退出系統仍然可以繼續執行該指令

屬性 : 系統相關 - 時間與排程 
語法 : nohup 預執行指令 [參數] 
執行範例 : 
* 在背景執行wget 抓取指定位址的檔案, 並在離線後仍然可以繼續進行. 
tw-descartes3:~/test1 # nohup wget http://www.test.com.tw/DRIVER/winxp2000.exe & <& 指在後台執行> 

補充說明 : 
@. 若我們想將工作在離線後能繼續執行, nohup 是個常用的指令. 
@. 網路文章 : nohup命令让Linux程序永远在后台执行 

但是有时候在这一步会有问题,当把终端关闭后,进程会自动被关闭,察看nohup.out可以看到在关闭终端瞬间服务自动关闭。
咨询红旗Linux工程师后,他也不得其解,在我的终端上执行后,他启动的进程竟然在关闭终端后依然运行。
在第二遍给我演示时,我才发现我和他操作终端时的一个细节不同:他是在当shell中提示了nohup成功后还需要按终端上键盘任意键退回到shell输入命令窗口,然后通过在shell中输入exit来退出终端;而我是每次在nohup执行成功后直接点关闭程序按钮关闭终端.。所以这时候会断掉该命令所对应的session,导致nohup对应的进程被通知需要一起shutdown。
这个细节有人和我一样没注意到,所以在这儿记录一下了。...

沒有留言:

張貼留言

[Git 常見問題] error: The following untracked working tree files would be overwritten by merge

  Source From  Here 方案1: // x -----删除忽略文件已经对 git 来说不识别的文件 // d -----删除未被添加到 git 的路径中的文件 // f -----强制运行 #   git clean -d -fx 方案2: 今天在服务器上  gi...