最近 RedHat 系统中某个关键进程不知道啥米原因,或鸭梨过大。 总是无故挂掉。 于是写了这个小脚本,自动检测指定进程。 使用 ps -ef 获取内容,if + eq 判断 如果内容为空,则重新启动进程。 本脚本存为 xxx.pl 然后用 crontab 定时执行即可。 但脚本名字别取为 跟所需进程检测相同的名字。 例如检测 MysqL 进程。 别把脚本名也设为 MysqL_ck.pl 这一类的名字。 因为本身该脚本在运行中,也会有相应名字的进程,会被误判为 MysqL。 这样脚本就认为 MysqL 依旧执行,判别出错了。 代码中 sasl 就是所检测的某个程序,按照需要修改即可。 [Perl]代码 #! /usr/bin/perl $ck=`ps -ef | grep 'sasl' | grep -v grep`; if ($ck eq ''){ print "SASL Down,Start up Now\n"; `/etc/rc.d/init.d/saslauthd start`; }else{ print "SASL Running\n"; }总结
以上是内存溢出为你收集整理的使用 Perl 检测 系统进程,实现进程意外退出重启全部内容,希望文章能够帮你解决使用 Perl 检测 系统进程,实现进程意外退出重启所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)