当前位置:首页 » 网页前端 » shell脚本检测服务进程
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

shell脚本检测服务进程

发布时间: 2022-03-02 18:10:22

A. 求帮忙写一个shell脚本,监控进程的。

#!/bin/sh
ps -ef | grep -v grep || grep -w 'java -jar /opt/mcb/scap/bin/ftp.jar monitor'
if [ $? -eq 0 ]; then
echo "start"
else
java start
fi

B. shell脚本判断是否有某进程在运行

1 、可以通过ps命令获取所有的进程,然后通过awk命令提取进程名,再用grep提取相应的进程名即可。

2、参考代码如下:

ps-aux|awk'{print$11}'|grep"^$1">/dev/null
case$?in
0)
echo"findprocess$1"
;;
1)
echo"$1isnotrunning"
;;
*)
echo"unknowerror"
esac

3、运行结果如下

C. 如何编写一个shell脚本查看某个进程是否在运行

1 、编写一个shell脚本来查看某个进程是否在运行,用户可以通过ps命令获取所有的进程,然后通过awk命令提取进程名,再用grep提取相应的进程名即可。

2、参考代码如下:

ps-aux|awk'{print$11}'|grep"^$1">/dev/null
case$?in
0)
echo"findprocess$1"
;;
1)
echo"$1isnotrunning"
;;
*)
echo"unknowerror"
esac

3、脚本运行结果如下

D. shell脚本判断进程是否存在,并重新启动

#!/bin/bash # #调用关闭jboss进程脚本 stopMethodServer.sh #打印出当前的jboss进程:grep jboss查询的jboss进程,grep -v "grep" 去掉grep进程 jmsThread=`ps -ef | grep gdms | grep jboss | grep -v "grep"` echo $jmsThread #查询jboss进程个数:wc -l 返回行数 count=`ps -ef | grep gdms | grep jboss | grep -v "grep" | wc -l` echo $count sec=7 #开始一个循环,以判断进程是否关闭 for var in 1 2 do if [ $count -gt 0 ]; then #若进程还未关闭,则脚本sleep几秒 echo sleep $sec second the $var time, the JMS thread is still alive sleep $sec else #若进程已经关闭,则跳出循环 echo "break" break fi done #if [ $count -eq 0 ]; then # echo "nohup startMethodServer.sh &" # nohup startMethodServer.sh & #else # echo "It's better to check the thread!!!" #fi #调用启动脚本 nohup startMethodServer.sh &

E. 如何判断服务是否运行的shell脚本

1 、可以通过ps命令获取所有的进程,然后通过awk命令提取进程名,再用grep提取相应的进程名即可。

2、参考代码如下:

ps-aux|awk'{print$11}'|grep"^$1">/dev/nullcase$?in0)echo"findprocess$1";;1)echo"$1isnotrunning";;*)echo"unknowerror"esac

3、运行结果如下

F. shell脚本怎么判断进程假死

得确认假死的所有状态,程序才可以判断,否则容易误判

G. 如何用Shell脚本判断一个进程是否在运行

if [ `ps aux|grep nginx|grep -v grep|wc -l` -gt 0 ];then

echo nginx is not running
fi

H. 写一个shell脚本,每隔10秒,检查当前系统中有没有进程名字为"firefox"的进

while :;do ps aux |grep firefox | grep -v grep; sleep 10;done

I. shell脚本检查进程是否存在不存在发送邮件

前几天开始跑一份数据名单,名单需要提供用户名、是否有手机号、是否有邮箱,用户名单我轻易的获取到了,但是,用户名单有2000w之多,并且去检测用户是否有手机号、是否有邮箱必须得通过一个对外开放的安全接口一个一个用户去请求,然后分析返回值才能知道。 下面是我处理的方案: 1、将2000w名单保存到临时数据表 2、用PHP程序每次从该表获取500个用户,检测完后生成SQL update原纪录 3、为了防止PHP程序突然断掉,用shell脚本每隔1分钟检测,PHP挂掉了则重启 我使用shell脚本作为守护进程的原因是,手机与邮箱的检测接口速度慢,不可能在1~2天将2000w用户检测完。 方案详细: 1、临时保存用户名单表users,表结构如下: 复制代码 代码如下: CREATE TABLE `users` ( `account` varchar(50) COMMENT '用户名', `has_phone` tinyint(3) unsigned NOT NULL default '0' COMMENT '是否有手机号', `has_email` tinyint(3) unsigned NOT NULL default '0' COMMENT '是否有邮箱', `flag` tinyint(3) unsigned NOT NULL default '0' COMMENT '标志位', PRIMARY KEY (`account`), KEY `flag` (`flag`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='名单表'; 我先将2000多w用户名导入到这个临时表,has_phone与has_email这二个字段默认都是0(没有),标志位flag说明该用户是否已经检测完。 下面是一部分表数据: 9873aaa,0,0,0 adddwwwd876222,0,0,0 testalexlee,0,0,0 codejia,0,0,1 haohdouywaa21,1,1,1 9873aaa,0,1,1 adddwwwd876222,1,0,1 说在最后:以上用户名单数据只是举个栗子,不要太认真,2000w数据,我估计要跑一段时间了,因为检测接口比较慢,接口在接到请求后还要连表,查表,再返回。其实,最好的方法还是直接从接口请求的表拉一份名单出来,再用shell命令处理下很快就有结果了,可是在公司就是这样,有些东西不开放的,你懂的~~~

J. 如何编写一个shell脚本实时的查看某个进程

如果进程名字是复杂且唯一的那只需要使用grep做简单匹配,使用下面命令:

ps-ef|grep-vgrep|grep'进程名字'&&echo'正在运行'||echo'已停止运行'