linux打开pythonshall,linux系统shell脚本后台运行python程序
python開發的同學們應該都知道怎么樣去啟動一個python應用,但是一旦我們把python應用部署到linux服務器上該如何啟動呢?
方式①:就是使用進程管理工具,比如supervisor。想了解的小伙伴可以學習[這篇文章]
(https://www.cnblogs.com/toutou/p/supervisor.html)。
方式②:就是自己寫一個簡單shell腳本,將程序在后臺運行,即使關閉linux終端窗口也不會影響進程的運行。
兩者優缺點
方式
優點
缺點
supervisor進程管理
① 可以通過網頁執行啟動停止的操作② 單配置文件可控制多個程序③ 可控制進程數量4④進程資源控制能力比較強
① 本身需要被監控② 開機自啟依賴其他程序③ 不能跨主機④依賴于meld3、setuptools
自寫shell腳本
啟停簡單,無復雜配置
需要一定的linux知識基礎,進程資源控制能力比較弱,簡單的程序啟停工具,存在一定的程序掛的風險。
#! /bin/bash
application='/home/wangping/'
a='hello'
b=`ps -aux| grep 'python3 /home/wangping/duty.py' | grep -v 'grep'| wc -l`
if [ ! $1 ];then
echo "請傳參數 start|stop|restart"
else
if [ $1 == "start" ];then
if [ "$b" -gt "0" ];then
echo ""
else
nohup python3 /home/wangping/duty.py >${application}info.log 2>log &
echo ""
fi
fi
if [ $1 == 'stop' ];then
pid=`ps -aux | grep 'python3 /home/wangping/duty.py' | grep -v 'grep' | awk '{print $2}'`
if [ ! $pid ];then
echo ""
else
kill -s 9 $pid
echo ""
fi
fi
if [ $1 == 'restart' ];then
pid=`ps -aux | grep 'python3 /home/wangping/duty.py' | grep -v 'grep' | awk '{print $2}'`
if [ ! $pid ];then
nohup python3 /home/wangping/duty.py >${application}info.log 2>log &
echo ""
else
kill -s 9 $pid
nohup python3 /home/wangping/duty.py >${application}info.log 2>log &
echo ""
fi
fi
fi
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的linux打开pythonshall,linux系统shell脚本后台运行python程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: eigen冲突 sophus 安装_SL
- 下一篇: 微机原理和计算机组成原理一样吗_计算机组