nohup結合&的一般使用方式:
- nohup some_command &
- nohup some_command >some_file.log 2>&1 &
nohup是no hang up 的縮寫,表示不掛斷,忽略所有掛斷(SIGHUP)信號 —— 即可以使程序一直執行。
在nohup命令末尾加上 & :這個 '&' 號表示在后台運行。
缺省時,該命令的所有輸出都被重定向到當前目錄下一個nohup.out文件中。
所以:
結合nohup 和 & 的方式能夠保證我們在服務器上部署任務時,退出終端,任務依然能夠在后台一直執行。
例如:
- nohup sh test.sh &
或者
- nohup python test.py &
也可以像上面一樣重定向輸出文件 >some_file.log,2>&1 表示將標准錯誤也寫回也重定向到標准輸出中(這里就是這個 some_file.log,缺省時指 nohup.out 文件)。
ps : 每次執行完nohup + ...... + & 就會出現一個進程號,可以使用ps查看當前運行的進程號,看程序是否在執行。
或者具體名稱查找:ps ax | grep test.py
kill -9 進程號:當你想終止該任務時,使用kill -9 加進程號的方式。
#
參考:
https://blog.csdn.net/csdnliuxin123524/article/details/90419017
https://www.cnblogs.com/zq-inlook/p/3577003.html