用Python实现检测服务存活并启动(通用)

2023-11-07 10:37:57 浏览数 (2)

代码语言:javascript复制

import subprocess
import sys,os
import time

cmd = "netstat -lntup|grep 0.0.0.0:%s|grep tcp|wc -l" % sys.argv[1]
startNginx='docker start nginx'

def runCmd(result):
    obj=subprocess.Popen(result,
                     shell=True,
                     stdout=subprocess.PIPE,
                     stderr=subprocess.PIPE
                     )
    port = obj.stdout.read().decode('gbk')

    return port

def startCmd(port: int):
    '''默认启动Nginx'''
    if port == 0:
        print('服务未启动!!!')
        runCmd(startNginx)
        if int(runCmd(cmd)) == 0:
            print('启动失败!!!')
        else:
            print('启动成功')
    else:
        print('服务正常')

if __name__ == '__main__':
    port = int(runCmd(cmd))
    print(port)
    startCmd(port)

代码语言:javascript复制
(base) xj@xjpc:~/Desktop/tmp/0831$ python3 nginx.py 80
0
服务未启动!!!
启动成功

我有个大胆的想法

小伙伴在平常有没有遇到以下这种情况:遇到技术难题时,网上教程一堆堆,优秀的很多,但也有很多是过时的,或者是copy来copy去,甚至错别字都没改。

我公众号的技术文章,都是亲自校验过的。至少可以保证在发文的一段时间,不会过时。如果你在实操过程中,有遇到问题,可以在同名公众号留言,免费解答,相互学习,相互成长^v^

0 人点赞