當(dāng)用戶(hù)注銷(xiāo)(logout)或者網(wǎng)絡(luò)斷開(kāi)時(shí),終端會(huì)收到 HUP(hangup)信號(hào)從而關(guān)閉其所有子進(jìn)程(包括sshd及其子進(jìn)程)。因此,我們的解決辦法就是讓進(jìn)程忽略 HUP 信號(hào).
利用nohup命令將python程序放在后臺(tái)運(yùn)行
nohup 就是讓提交的命令忽略 hangup 信號(hào),從而當(dāng)ssh連接狀態(tài)斷開(kāi)時(shí),不會(huì)被系統(tǒng)中斷掉;;
nohup 命令只需在要處理的命令前加上 nohup 即可,標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤缺省會(huì)被重定向到 nohup.out 文件中;一般可在結(jié)尾加上 & 表示將命令放入后臺(tái)運(yùn)行。
==這兩個(gè)語(yǔ)句也可以后臺(tái)運(yùn)行,記得要在終端exit一下==
python -u main.py > xxx.log 2>&1 &
# 關(guān)閉node用exit
exit
=========================================
nohup python -u test.py > test.out 2>&1 &
nohup python -u xxx.py > xxx.log 2>&1 &
# 運(yùn)行成功會(huì)輸出一個(gè)PID號(hào),如果想關(guān)閉運(yùn)行程序就可以:
kill -9 PID
nohup python test.py 1>result.txt 2>error.txt &
詳解:
“nohup”:保證程序不被掛起
“python”:確保執(zhí)行python代碼
“-u”:表示不啟用緩存,實(shí)時(shí)打印輸出信息到日志文件(不加利用tail查看時(shí)內(nèi)容不會(huì)實(shí)時(shí)刷新)也就是把輸出直接放到log中,沒(méi)這個(gè)參數(shù)的話(huà),log文件的生成會(huì)有延遲
“test.py”:運(yùn)行程序;
“>”:將打印信息輸出到日志文件;
“test.out”:輸出的日志文件;
“2>&1”:將標(biāo)準(zhǔn)錯(cuò)誤輸出轉(zhuǎn)變?yōu)闃?biāo)準(zhǔn)輸出,可以將錯(cuò)誤信息也輸出到日志文件中,0-> stdin, 1->stdout, 2->stderr,2與>結(jié)合代表錯(cuò)誤重定向,而1則代表錯(cuò)誤重定向到一個(gè)文件1,而不代表標(biāo)準(zhǔn)輸出
“&”:最后一個(gè)&表示后臺(tái)運(yùn)行程序
test.out 2>&1 自行更改日志輸出的目錄及文件filename
nohup指不斷地運(yùn)行,是no hang up的縮寫(xiě),指不間斷,不掛斷。nohup后臺(tái)運(yùn)行。
python 是運(yùn)行python文件
-u:python的輸出又緩沖,導(dǎo)致xxx.log并不能夠馬上看到輸出。-u參數(shù),使得python不啟用緩沖,可以即時(shí)看到輸出。
xxx.log保存輸出的信息,運(yùn)行程序時(shí)會(huì)生成這個(gè)xxx文件,里面保存這輸出的信息。
2>&1 將錯(cuò)誤信息重定向到標(biāo)準(zhǔn)輸出
& 最后一個(gè)&符號(hào)代表后臺(tái)運(yùn)行
利用ps命令查看進(jìn)程:
ps -ef | grep python
ps -ef | grep python
與ps aux |grep python
之間的比較參考連接
利用kill命令殺死進(jìn)程:
kill -9 進(jìn)程序號(hào)
用top查看進(jìn)程占用內(nèi)存的情況:
top
利用tail命令查看日志內(nèi)容:
tail -f test.out
Linux命令行下終止當(dāng)前程序
在命令行下起著終止當(dāng)前執(zhí)行程序的作用:
Ctrl+c
相當(dāng)于exit命令,退出當(dāng)前shell:
Ctrl+d
掛起當(dāng)前shell:
Ctrl+s
解凍掛起的shell再不行就重新連接打開(kāi)一個(gè)終端,reboot linux 或 kill 相關(guān)進(jìn)程:
Ctrl+q
參考鏈接文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-459737.html文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-459737.html
參考鏈接
查看目錄 /path/to/Images 下的所有文件數(shù)量
# 查看所有的文件數(shù)量
ls -1 /path/to/data/Images | wc -l
# 查看文件夾下jpg圖片得數(shù)量
ls -1 /path/to/data/Images/*.jpg | wc -l
# 查看文件夾下txt文件得數(shù)量
ls -1 /path/to/data/Images/*.txt | wc -l
到了這里,關(guān)于服務(wù)器后臺(tái)運(yùn)行python程序的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!