欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

linux shell实现守护进程脚本

程序员文章站 2022-06-02 08:39:17
嵌入式初学者,第一次上传代码。昨天做了一个udhcpd与udhcpc的守护,目前只会用shell模仿编写,还有什么方法可以做守护呢? #! /bin/sh #进...

嵌入式初学者,第一次上传代码。昨天做了一个udhcpd与udhcpc的守护,目前只会用shell模仿编写,还有什么方法可以做守护呢?

#! /bin/sh
#进程名字可修改
pro_name=udhcpc
wlan=ra0
 
while true ; do
 
#    用ps获取$pro_name进程数量
  num=`ps aux | grep ${pro_name} | grep -v grep |wc -l`
#  echo $num
#    少于1,重启进程
  if [ "${num}" -lt "1" ];then
    echo "${pro_name} was killed"
    ${pro_name} -i ${wlan}
#    大于1,杀掉所有进程,重启
  elif [ "${num}" -gt "1" ];then
    echo "more than 1 ${pro_name},killall ${pro_name}"
    killall -9 $pro_name
    ${pro_name} -i ${wlan}
  fi
#    kill僵尸进程
  num_stat=`ps aux | grep ${pro_name} | grep t | grep -v grep | wc -l`
 
  if [ "${num_stat}" -gt "0" ];then
    killall -9 ${pro_name}
    ${pro_name} -i ${wlan}
  fi
done
 
exit 0

以上所述就是本文的全部内容了,希望能够对大家熟悉linux shell脚本有所帮助。