Shell脚本内容
windows下编写:
新建一个文本文件,编辑代码如下:
#!/bin/bash
#守护进程,每隔5秒守护一次
while true
do
res=`ps -ef | grep 8000 | grep -v grep | wc -l`
#查询8000端口下的运行进程的数目,也可以把8000改成想要守护的进程名
if [ $res -eq 0 ]
#如果进程数为0 -eq跟==差不多
then
#就执行下面一句话
nohup python3.6 manage.py runsslserver --certificate /root/projects/1_www.yufuculture.com_bundle.crt --key /root/projects/2_www.yufuculture.com.key 0.0.0.0:8000
fi
sleep 5s #守护进程运行间隔
done
之后另存为,命名成keep.sh,保存类型,所有文件,点击确定。
之后打开你的FileZilla,把你刚刚写的sh文件拖到到你服务器上面去,
注意,一定要跟你要守护的进程一个目录。
Linux下编写:
打开你的命令行窗口,
1按照顺序输入以下代码:
#1
vim 你的目录/keep.sh
#2
按下INSERT
#3
#!/bin/bash
#守护进程,每隔5秒守护一次,复制ctrl+insert 粘贴shift+insert
while true
do
res=`ps -ef | grep 8000 | grep -v grep | wc -l`
#查询8000端口下的运行进程的数目,也可以把8000改成想要守护的进程名
if [ $res -eq 0 ]
#如果进程数为0 -eq跟==差不多
then
#就执行下面一句话
nohup python3.6 manage.py runsslserver --certificate /root/projects/1_www.yufuculture.com_bundle.crt --key /root/projects/2_www.yufuculture.com.key 0.0.0.0:8000
fi
sleep 5s #守护进程运行间隔
done
#4
按下ESC 按下shift+; 输入wq! 回车
#5(检查是否保存)
vim 你的目录/keep.sh
如果保存了就执行按照#4退出,如果没有在执行#2,#3,#4,#5
挂载你的脚本
输入以下指令
#1
cd 你的目录
#2
chmod u+x keep.sh
#3
yum -y install dos2unix*
#4
dos2unix *.*
#5
nohup ./keep.sh &
好了脚本已经挂载完毕
检查是否运行
1在xshell中重新开一个会话窗口,千万不要在之前的窗口执行ctrl+c
1如果执行了,请重复 挂起#5
1在新窗口输入以下指令
ps -ef | grep keep.sh | grep -v grep | wc -l
#如果显示大于0的话说明运行成功
#我们在来把需要守护的进程kill掉
ps -ef |grep 8000
#查询8000端口,找出PID,也就是进程编号
kill -9 PID
#杀掉进程,等待五秒
ps -ef |grep 8000
#看看是不是PID不一样了,那就说明守护脚本功能完好