问题描述
我需要做一个shell脚本,运行在Linux上,检查某个进程是否在运行,如果在运行则返回1,不在运行则返回0,在下对shell脚本不是很熟,请大家帮忙解决一下,谢谢啦~~ ps:进程名称不能写死,应该是执行命令是传入的参数
解决方案
#!/bin/bashPROC_NAME=$1ProcNumber=`ps -ef |grep $PROC_NAME|grep -v grep|wc -l`if [ $ProcNumber -le 0 ];then result=0else result=1 fiecho ${result}
解决方案二:
asyty的回答少了匹配整个进程名字的逻辑,grep应该加上 -w选项#!/bin/bash PROC_NAME=$1 ProcNumber=`ps -ef |grep -w $PROC_NAME|grep -v grep|wc -l` if [ $ProcNumber -le 0 ];then result=0 else result=1 fi echo ${result}
时间: 2024-10-23 08:53:42