侧边栏壁纸
博主头像
MicroMatrix博主等级

曲则全,枉则直,洼则盈,敝则新,少则得,多则惑。是以圣人抱一为天下式。不自见,故明;不自是,故彰;不自伐,故有功;不自矜,故长。夫唯不争,故天下莫能与之争。古之所谓“曲则全”者,岂虚言哉!诚全而归之。

  • 累计撰写 80 篇文章
  • 累计创建 21 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Linux 简单弄一个自动启动脚本

蜗牛
2022-05-24 / 0 评论 / 0 点赞 / 6 阅读 / 3143 字 / 正在检测是否收录...

前言

服务器本身很垃圾,是一个小鸡服务器,Java后端程序经常崩溃,所以用sh脚本简单的做一个自动重启命令

脚本

#!/bin/sh
#切换到目录
cd /usr/local/app
date=`date`
#查询端口占用
lsof -i:8080
# $? -ne 0 不存在 $? -eq 0存在
if [ $? -ne 0 ]
then nohup java -jar xxx.jar >/dev/null 2>&1 & echo $date ":=============== restart ===============" >> monitoring.log
else echo $date ":=============== is normal ==============" >> monitoring.log
fi

添加计时脚本

Linux crontab 命令
Linux crontab是用来定期执行程序的命令。
当安装完成操作系统之后,默认便会启动此任务调度命令。

添加或更新crontab命令

crontab -e

追加一条命令

每分钟执行脚本文件

* * * * * . /etc/profile;/bin/sh /usr/local/app/monitoring.sh

重启crond

service crond restart

查看当前系统登录用户的Crontab命令集合

crontab -l

注意

如果我们使用 crontab 来定时执行脚本,无法执行,但是如果直接通过命令(如:./test.sh)又可以正常执行,这主要是因为无法读取环境变量的原因。

解决:在 crontab 中添加环境变量,在可执行命令之前添加命令 ./etc/profile;/bin/sh,使得环境变量生效

0

评论区