Linux 服务器上运行 Spring Boot jar 包的 bash 脚本,它能够判断程序是否宕机并自动重启:
// An highlighted block
#!/bin/bash
# 设置变量,指向 jar 包的位置
jar_path=/path/to/your/jar/file.jar
# 定义一个函数来检查程序是否宕机
check_status() {
# 使用 ps 命令检查 jar 包是否在运行
running=$(ps -ef | grep $jar_path | grep -v grep)
if [ -z "$running" ]; then
return 1
else
return 0
fi
}
# 循环检查程序是否宕机
while true; do
check_status
if [ $? -eq 1 ]; then
echo "Service is down, restarting..."
# 如果宕机了,则启动 jar 包
nohup java -jar $jar_path &
fi
sleep 10
done
将此脚本保存为一个名为 start.sh 的文件,并在终端中执行 chmod +x start.sh 以赋予其可执行权限。然后,您可以使用 ./start.sh 在后台运行此脚本。
请注意,在使用此脚本前,您需要根据自己的需要修改 jar_path 变量以指向自己的 jar 包。