在服務(wù)器上,為了退出終端,程序依然能夠運(yùn)行,需要設(shè)置程序在后臺(tái)運(yùn)行。
關(guān)鍵的命令:nohup
*基本用法:
進(jìn)入要運(yùn)行的py文件目錄前
nohup python? -u test.py > test.log 2>&1 &
*含義解釋?zhuān)?/p>
nohup? 不掛起的意思
python? test.py? python運(yùn)行test.py文件
-u? ? 代表程序不啟用緩存,也就是把輸出直接放到log中,沒(méi)這個(gè)參數(shù)的話(huà),log文件的生成會(huì)有延遲
> test.log? 將輸出日志保存到這個(gè)log中
2>1? ? ? ? 2與>結(jié)合代表錯(cuò)誤重定向,而1則代表錯(cuò)誤重定向到一個(gè)文件1,而不代表標(biāo)準(zhǔn)輸出;
2>&1? ? ? 換成2>&1,&與1結(jié)合就代表標(biāo)準(zhǔn)輸出了,就變成錯(cuò)誤重定向到標(biāo)準(zhǔn)輸出.
&? ? ? ? 最后一個(gè)& ,代表該命令在后臺(tái)執(zhí)行
*命令運(yùn)行后會(huì)有提示,示例:
[1]? 2880
代表進(jìn)程2880中運(yùn)行。
*查看nohub命令下運(yùn)行的所有后臺(tái)進(jìn)程:
jobs
*查看后臺(tái)運(yùn)行的所有進(jìn)程:
ps -aux
*查看后臺(tái)運(yùn)行的所有python 進(jìn)程:
ps aux |grep python
或者
ps -ef | grep python
*刪除進(jìn)程
kill -9? [進(jìn)程id]
-9? 的意思是強(qiáng)制刪除