在服務器上,爲了退出終端,程序依然可以運行,須要設置程序在後臺運行。python
關鍵的命令:nohup緩存
*基本用法:
進入要運行的py文件目錄前服務器
nohup python -u test.py > test.log 2>&1 &
.net
*含義解釋:
nohup 不掛起的意思
python test.py python運行test.py文件日誌
-u 表明程序不啓用緩存,也就是把輸出直接放到log中,沒這個參數的話,log文件的生成會有延遲blog
> test.log 將輸出日誌保存到這個log中進程
2>1 2與>結合表明錯誤重定向,而1則表明錯誤重定向到一個文件1,而不表明標準輸出;
2>&1 換成2>&1,&與1結合就表明標準輸出了,就變成錯誤重定向到標準輸出.io
& 最後一個& ,表明該命令在後臺執行test
*命令運行後會有提示,示例:
[1] 2880後臺
表明進程2880中運行。
*查看nohub命令下運行的全部後臺進程:
jobs
*查看後臺運行的全部進程:
ps -aux
*查看後臺運行的全部python 進程:
ps aux |grep python
或者
ps -ef | grep python
*刪除進程kill -9 [進程id]