Linux下使用sh脚本每分钟检查某个进程是否在运行,如果没有运行则重新启动进程

一、需求描述

  Linux服务器上的某些进程总是被其他人kill掉导致网页或一些内容无法访问,因此需要定时检查进程是否还在运行,如果被kill掉了就重启。

 

二、实现方法

1、在某个目录下创建start.sh文件,脚本编辑如下形式

#! /bin/bash
ps -ef | grep "upload_pictures" | grep -v grep
#如果进程搜索不出来$?为1否则为0,当不为0的时候重启进程
if [ $? -ne 0 ]
then
cd /root/upload_picture && python3 upload_pictures.py #进入脚本路径执行脚本
else
echo "running"
fi
~             

 

2、crontab -e 配置定时执行任务

* * * * * /bin/sh /root/upload_picture/start.sh #每分钟检查一次

 

posted @ 2022-08-16 11:33  梅梅不想踩坑  阅读(1134)  评论(0编辑  收藏  举报