主要目的是用于重启后台比较重要的进程,如果采用killall -9强制kill掉,可能会引起问题。比如数据库进程。代码如下:
#!/bin/sh if [ -z "$1" ]; then /bin/echo "$0 <command line>" exit 1 fiparam='' list='2 3 4 5 6 7 8 9' for i in $list; do eval p='$'$i if [ -z $p ]; then break fi param="$param $p" done
if [ -f /bin/awk ]; then AWK=/bin/awk else AWK=/usr/bin/awk fi
if [ -f /bin/grep ]; then GREP=/bin/grep else GREP=/usr/bin/grep fi
program=`/bin/echo $1 | $AWK -F '/' '{print $NF;}'` count=`/bin/ps auxww | $GREP -w $program | $GREP -v grep | /usr/bin/wc -l` if [ $count -gt 0 ]; then i=0 /bin/echo "stopping $program ..." while [ 1 -eq 1 ]; do if [ $i -eq 0 ]; then /usr/bin/killall $program else /usr/bin/killall $program >/dev/null 2>&1 fi
if [ $? -ne 0 ]; then break fi
/usr/bin/printf . /bin/sleep 1 let i=$i+1 done fi
/bin/echo "" count=`/bin/ps auxww | $GREP -w $program | $GREP -v grep | $GREP -v $0 | /usr/bin/wc -l` if [ $count -eq 0 ]; then /bin/echo "starting $program ..." exec $1 $param else /bin/ps auxww | $GREP -w $program | $GREP -v grep | $GREP -v $0 /bin/echo "already running $program count: $count, restart aborted!" fi
本文向大家介绍实现释放CentOS系统内存的Shell脚本分享,包括了实现释放CentOS系统内存的Shell脚本分享的使用技巧和注意事项,需要的朋友参考一下 这几天发现CentOS系统内存一直涨,即使把apache和mysql关闭了,内存也不释放,可以使用以下脚本来释放内存: 脚本内容: 利用系统crontab实现每天自动运行: 输入以下内容: 每天0点释放一次内存,这个时间可以根据自己
本文向大家介绍CentOS下redis自启动shell脚本,包括了CentOS下redis自启动shell脚本的使用技巧和注意事项,需要的朋友参考一下 用这个脚本管理之前,需要先配置下面的内核参数,否则Redis脚本在重启或停止redis时,将会报错,并且不能自动在停止服务前同步数据到磁盘上: 然后应用生效: 然后增加服务并开机自启动: 脚本源码: 注意:请将脚本中redis的启动文件、配置文件和
本文向大家介绍shell脚本实现磁盘监控系统,包括了shell脚本实现磁盘监控系统的使用技巧和注意事项,需要的朋友参考一下 利用shell脚本实现每隔60秒磁盘内存数据监控 效果如图: 以上就是shell脚本实现磁盘监控系统的详细内容,更多关于shell 磁盘监控的资料请关注呐喊教程其它相关文章!
本文向大家介绍centos/rhel下实现nginx自启动脚本实例,包括了centos/rhel下实现nginx自启动脚本实例的使用技巧和注意事项,需要的朋友参考一下 通常在centos、rhel的OS下,我们大多是通过chkconfig来管理服务,比如开机自动启动服务之类。 这里给大家介绍一个很好用的nginx启动脚本。以及简单的使用,如下: 1. 执行如下命令: 2.输入如下内容: 注意:该文
本文向大家介绍Shell脚本实现Linux系统和进程资源监控,包括了Shell脚本实现Linux系统和进程资源监控的使用技巧和注意事项,需要的朋友参考一下 在服务器运维过程中,经常需要对服务器的各种资源进行监控,例如:CPU的负载监控,磁盘的使用率监控,进程数目监控等等,以在系统出现异常时及时报警,通知系统管理员。本文介绍在Linux系统下几种常见的监控需求及其shell脚本的编写。 文章目录:
本文向大家介绍Shell实现的Oracle启动脚本分享,包括了Shell实现的Oracle启动脚本分享的使用技巧和注意事项,需要的朋友参考一下 Usage: sh oracled [start|stop|restart] SIDs 其中SIDs是数据库名,多个名称之间用逗号分隔。缺省的操作是 restart ,也可以指定需要进行的操作( start | stop | restart )