zoukankan      html  css  js  c++  java
  • Shell实现判断进程是否存在并重新启动脚本

    原文地址:http://blog.csdn.net/superbfly/article/details/52513765

    简洁版:

     #! /bin/bash
        # author caoxin
        # time 2012-10-10 
        # program : 判断进行是否存在,并重新启动
    
    
        function check(){
          count=`ps -ef |grep $1 |grep -v "grep" |wc -l`
          #echo $count
          if [ 0 == $count ];then
            nohup python /runscript/working/$1 &
          fi
        }
    
        check behaviors.py

    详细版:

    #!/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 &
  • 相关阅读:
    孔曰成仁,孟曰取义
    mysql索引&实现原理
    MySQL存储引擎
    HashMap原理
    反射
    list对象属性排序
    mysql数据表操作&库操作
    mysql字段类型
    java线程池初步理解
    java四种内部类
  • 原文地址:https://www.cnblogs.com/boonya/p/7268224.html
Copyright © 2011-2022 走看看