由于最近要负责一个项目的维护工作,这个服务器总是出现段错误,由于时间比较紧张,我就写了一个简单的重启脚本,先让服务器不至于总是dump掉。
废话不多说,先上代码:
脚本比较简单,主要参考了http://www.linuxdiyf.com/viewarticle.php?id=20338 。
shell脚本对程序的格式要求相当严格,这个在编程的过程中要特别注意。
另外,
1. PROCESS_NUM=$(...) 也可以用PROCESS_NUM=' ... ' ;
2.判断条件中的"$CheckQQ_RET" = "1" 也可以改成 $CheckQQ_RET -eq 1。
由于初学shell,花了一下午时间把这个程序调通了,服务器总算能跑起来了,呵呵。
除此之外,为了实现同步,有的时候需要定时重启程序。下面给出的一段代码能实现两个功能:
1. 程序崩溃了,重启;
2. 半小时自动重启程序。
#!/bin/sh
exec ./test&
while [ 1 ]; do
PROCESS_NUM=$(ps ax|grep test | grep -v "gedit" | grep -v " grep" | wc -l)
if [ "$PROCESS_NUM" = "0" ]
then
killall -9 test
exec ./test&
fi
$a=$($a+10)
if ["$a" = "1800"];then
a=0
killall -9 test
exec ./test&
fi
sleep 10
done