ubuntu运行脚本该怎么写?
例如:
一、运行脚本
二、停止脚本
三、监听脚本
四、定时任务
运行脚本run.sh
步骤:
1、在对应的文件夹新建一个run.sh
vim run.sh
2、在run.sh写入对应 的脚本内容,这里一python3为例:
#!/bin/bash
#command content
cd /home/python/verify
nohup python3 /home/python/verify/yanzhen.py > **yanzhen.log 2>&1 &**
3、赋予权限 sudo chmod +x run.sh
nohup :nohup 命令运行后台中的程序。默认后台运行
停止脚本stop.sh
写法:
1、写脚本
kill -9 $(netstat -nlp | grep :9999 | awk '{print $7}' | awk -F"/" '{ print $1 }')
2、赋予权限(跟上面类似)
监听脚本Listen_port.sh:
1、新建一个监听的脚本,在写入定时任务,限制每分钟执行一次,监听脚本如下:
#!/bin/bash
ListeningPort=`netstat -tunlp | grep 8008`
if [ $ListeningPort ==str ]
then
{
echo "`date` $ListeningPort : 8008 port is down">>/home/kefu/data.log
#如果8008端口down了,重启服务
/home/kefu/run.sh
}
else
{
echo "`date` : 8008端口正常" >>/home/kefu/data.log
}
fi
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/f65750165545431ab5b62c2100fea8c6.jpeg#pic_center
定时任务:
话不多说,先上截图,以下就是一张定时任务的代码:
步骤:
1、首先找到对应的文件夹crontab, 输入命令 vim /etc/crontab
,在里面写定时任务;
2、其中,从左往右依次表示,分钟、小时、日、月 、周
3、表示,每分钟执行一次写法 */1
4、把定时任务的脚本路径带进来
5、重新加载文件夹systemctl daemon-reload