linux查看python脚本运行情况,linux下python脚本检测自身是否在运行,如不在运行,则启动运行...

今天被运维发现我写的linux脚本的进程占满了屏幕,:)。被贴到群里了。长个记性。

怎么在脚本运行前查看一下是否已经在运行了,如果已经在运行了,应该提示程序已经在运行。demo代码贴出来。

5e4a810df80aad348165a9c5a112c8e6.png

import os

import re

# execute command, and return the infomation. 执行命令并返回命令输出信息

def execCmd(cmd):

r = os.popen(cmd)

text = r.read()

r.close()

return text

def doSomething():

print("start Running")

if __name__ == '__main__':

#ps -ef是linux查看进程信息指令,|是管道符号导向到grep去查找特定的进程,最后一个|是导向grep过滤掉grep进程:因为grep查看程序名也是进程,会混到查询信息里

programIsRunningCmd="ps -ef|grep python\ programName|grep -v grep"

programIsRunningCmdAns = execCmd(programIsRunningCmd) #调用函数执行指令,并返回指令查询出的信息

ansLine = programIsRunningCmdAns.split('\n') #将查出的信息用换行符‘\b’分开

#判断如果返回行数>2则说明python脚本程序已经在运行,打印提示信息结束程序,否则运行脚本代码doSomething()

if len(ansLine) > 2:

print("programName have been Running")

else:

doSomething()

ps命令详解:https://www.jianshu.com/p/cba22cce2f97

linux中ctrl-c, ctrl-z, ctrl-d 区别    https://www.cnblogs.com/klcf0220/p/6125777.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值