nohup python -u test.py > test.txt 2>&1 &
nohup
no hang up 的縮寫,就是不掛斷的意思。在命令行使用nohup --help

image.png
Run COMMAND, ignoring hangup signals.:運行命令,忽略掛起信號
就是不掛斷的運行,注意沒有后臺運行功能。
就是指,用nohup運行命令可以使命令永久的執(zhí)行下去,和用戶終端沒有關(guān)系,例如我們斷開SSH連接都不會影響他的運行,注意了nohup沒有后臺運行的意思;&才是后臺運行
&
是指在后臺運行,但當用戶推出(掛起)的時候,命令自動也跟著退出
那么,我們可以巧妙的吧他們結(jié)合起來用就是
nohup COMMAND &
-u
代表程序不啟用緩存,也就是把輸出直接放到log中,沒這個參數(shù)的話,log文件的生成會有延遲
> test.txt
將輸出日志保存到這個文件中
2>1
2與>結(jié)合代表錯誤重定向,而1則代表錯誤重定向到一個文件1,而不代表標準輸出;
2>&1
換成2>&1,&與1結(jié)合就代表標準輸出了,就變成錯誤重定向到標準輸出.
*命令運行后會有提示,示例:
[1] 2880
代表進程2880中運行。
配合常用命令行:
jobs -l:查看后臺運行任務(wù)
ctrl+z:任務(wù)暫停
ctrl+c:任務(wù)退出
fg:將后臺任務(wù),調(diào)到前臺運行
bg:任務(wù)繼續(xù)
kill:任務(wù)退出
參考鏈接:https://blog.csdn.net/u011095110/article/details/78666833