python 服務器后台運行


基本用法:
進入要運行的py文件目錄前

nohup python -u test.py > test.log 2>&1 & //打印日志
nohup xxxx >/dev/null 2>&1 & //不打印日志

 

含義解釋:
nohup 不掛起的意思

python test.py python運行test.py文件

-u 代表程序不啟用緩存,也就是把輸出直接放到log中,沒這個參數的話,log文件的生成會有延遲

test.log 將輸出日志保存到這個log中

2>1 2與>結合代表錯誤重定向,而1則代表錯誤重定向到一個文件1,而不代表標准輸出;
2>&1 換成2>&1,&與1結合就代表標准輸出了,就變成錯誤重定向到標准輸出.

& 最后一個& ,代表該命令在后台執行

/dev/null :Linux下有一個特殊的文件/dev/null,它就像一個無底洞,所有重定向到它的信息都會消失得無影無蹤。這一點非常有用,當我們不需要回顯程序的所有信息時,就可以將輸出重定向到/dev/null。

回到shell之后不能直接關閉自己的終端,必須輸入exit來退出SSH才能保證該腳本會一直在后台運行

[1] 2880

代表進程2880中運行。

查看nohub命令下運行的所有后台進程:
jobs
查看后台運行的所有進程:
ps -aux

查看后台運行的所有python 進程:
ps aux |grep python
或者

ps -ef | grep python

*刪除進程
kill -9 [進程id]

-9 的意思是強制刪除


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM