Shell实现判断进程是否存在并重新启动脚本分享_linux shell

简洁版:

#! /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 &

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索shell
重新启动
shell脚本监控进程、shell 多进程执行脚本、shell脚本kill进程、shell脚本杀死进程、shell脚本获取进程pid,以便于您获取更多的相关知识。

时间: 2024-10-25 13:22:47

Shell实现判断进程是否存在并重新启动脚本分享_linux shell的相关文章

Shell实现系统时间和BIOS时间同步校准脚本分享_linux shell

该脚本主要是从定义好的NTP服务器列表获取服务器地址进行同步,如果第一个不成功,会继续换下一个地址进行同步!不完善之处还请指出! 复制代码 代码如下: #!/bin/bash # NTP网络时间校正脚本 # 奔跑 #NTP服务器数组列表 ntpServer=( [0]=ntp.fudan.edu.cn [1]=asia.pool.ntp.org [2]=210.72.145.44 [3]=133.100.11.8 [4]=ntp.sjtu.edu.cn [5]=time.scau.edu.cn

Linux服务器硬件运行状态及故障邮件提醒的监控脚本分享_linux shell

监控硬件运行状况 shell 监控cpu,memory,load average,记录到log,当负载压力时,发电邮通知管理员. 原理: 1.获取cpu,memory,load average的数值 2.判断数值是否超过自定义的范围,例如(CPU>90%,Memory<10%,load average>2) 3.如数值超过范围,发送电邮通知管理员.发送有时间间隔,每小时只会发送一次. 4.将数值写入log. 5.设置crontab 每30秒运行一次. ServerMonitor.sh #

一个监控Squid运行进程数并自动重启的简洁Shell脚本分享_linux shell

复制代码 代码如下: #!/bin/sh while sleep 30 do SquidNum=`ps -ef|grep squid|grep -v grep|wc -l` #HttpNum=`netstat -an|grep 0.0.0.0:80|grep -v grep|wc -l` #80状态 if [ $SquidNum != 3 ] ; then /etc/rc3.duid start adddate=`date +%Y-%m-%d`" "`date +%H:%M:%S` e

实现android自动化测试部署与运行Shell脚本分享_linux shell

我的配置是linux 64, android4.2.2的sdk. 实现的细节都在代码注释里了,变量名以及echo的内容也是说明的一部分. 主流程为: 1.检测是否指定端口的模拟器已经运行,若有则关闭 2.创建模拟器 3.启动模拟器 4.用ant build包,通过检查bin目录下有没有apk来确定是否成功 5.检查指定端口的模拟器是否已正常运行 6.用adb安装apk 7.启动apk的activity,让程序自己跑 8.用shell ps循环检测程序是否已退出,若已退出,检查是否sdcard是是

8个实用的Shell脚本分享_linux shell

几个Shell脚本的例子,觉得还不错. [例子:001]判断输入为数字,字符或其他 复制代码 代码如下: #!/bin/bash  read -p "Enter a number or string here:" input    case $input in     [0-9]) echo -e "Good job, Your input is a numberic! \n" ;;  [a-zA-Z]) echo -e "Good job, Your i

Shell脚本制作的终端会话回放功能脚本分享_linux shell

不久前在书上看到两个很有趣的命令--script和srciptreplay,它可以把终端会话记录到一个文件中,即是说我们可以通过终端会话来来制作命令行技巧视频教程,也可以与他人分享会话文件,而且生成的文件还只是一般的文本文件,文件的大小非常小,真是非常有意思.下面是本人写的两个shell程序,来方便进行这个有趣并有意义的操作. 一.实现代码 文件:Record.sh 复制代码 代码如下: #! /bin/bash  # Filename:Record.sh    read -p "Please

Shell创建用户并生成随机密码脚本分享_linux shell

创建随机数的方法: 复制代码 代码如下: 1~~~~ /dev/urandom 在Linux中有一个设备/dev/urandom是用来产生随机数序列的.利用该设备我们可以根据在需要生成随机字符串. 比如我们要产生一个8位的字母和数字混合的随机密码,可以这样: 复制代码 代码如下: [linux@test /tmp]$ cat /dev/urandom | head -1 | md5sum | head -c 8 6baf9282 2~~~~ 其实,linux已经提供有个系统环境变量了. 复制代码

linux安装php扩展脚本分享_linux shell

测试环境:ubuntu 12.04 php 5.3.x 复制代码 代码如下: #!/bin/bash#Program:# Accomplish to expand the specified function only one key#History:# 2013/11/15 pankai<530911044@qq.com> first releasetest ! -f ./ext_skel && echo "The shell script of 'ext_skel

实现释放CentOS系统内存的Shell脚本分享_linux shell

这几天发现CentOS系统内存一直涨,即使把apache和mysql关闭了,内存也不释放,可以使用以下脚本来释放内存:   脚本内容:   复制代码 代码如下:     #! /bin/bash       # cache释放:       # To free pagecache:       sync       sync       #echo 1 > /proc/sys/vm/drop_caches       # To free dentries and inodes:       #e