shell命令监控某程序正常运行

#! /bin/sh  
 
#死循环  
while :  
do  
 
#查找某程序的pid  ps总会用吧,如 tomcat
  
ui=$(ps x |grep catalina |grep tomcat |grep -v grep|awk '{print $1}')  
echo 'tomcat pid is' $ui  
if    
  [ "$ui" == ""  ] ;then  
 
#如果TOMCAT 的PID不存在就启动tomcat  
  
echo "tomcat is shutdown ,now start up tomcat...."  
        export JAVA_HOME=/opt/jdk/1.6  
        export PATH=$JAVA_HOME/bin:$PATH  
        export LANG=zh_CN.GB18030  
        export LANGUAGE=zh_CN.GB18030:zh_CN.GB2312:zh_CN  
 #startup tomcatui  
 /opt/unimas/tomcatui/bin/startup.sh  
 
#睡眠4秒让tomcat启动  
        sleep 4  
echo "tomcat restart ok.."  
  
else  
        echo "tomcat is running...."  
fi  
  
done  

你可以使用shell脚本来监控程序是否崩溃,并在崩溃采取相应的措施。以下是一个单的示例: ```bash #!/bin/bash # 设置要监控程序名称 _name="your_program" # 循环监控状态 while true; do # 检查程序是否正在运行 if pgrep -x "$program_name" > /dev/null; then echo "程序正在运行" else echo "程序崩溃!" # 在此处添加处理程序崩溃的逻辑 # 例如,重新启动程序或发送警报通知 # 退出循环 break fi # 等待一段时间后再次检查程序状态 sleep 5 done ``` 在上述示例中,你需要将`your_program`替换为你要监控程序的名称。脚本使用`pgrep`命令来检查程序是否运行。如果程序未在运行,则输出"程序崩溃!"并执行相应的处理逻辑。你可以在此处添加自定义的处理代码,例如重新启动程序或发送警报通知。 脚本将以无限循环的方式运行,每隔5秒检查一次程序的状态。你可以根据需要调整循环的频率。 保存脚本为一个可执行文件(例如`monitor.sh`),然后在终端中运行脚本: ```bash ./monitor.sh ``` 这样,脚本将持续监控程序的状态,并在程序崩溃时采取相应的措施。 请注意,此示例只是一个简单的监控脚本,你可能需要根据具体需求进行更复杂的处理和优化。例如,你可以使用日志文件记录程序的状态和崩溃时间,或使用其他工具来监控程序的健康状态。 希望这个示例对你有所帮助。如果你有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值