Linux 环境 Java 服务(jar包)启动、停止、重启脚本
自动化 Java 服务重启脚本,并在其中添加日志输出功能。这个脚本会根据需求启动、停止或重启 Java 服务,并将操作记录到日志文件中。具体操作和脚本如下:
- 将以下脚本保存为
restart_java_service.sh
文件。 - 给脚本添加执行权限:
chmod +x restart_java_service.sh
。 - 使用以下命令操作 Java 服务,并查看日志文件以了解操作过程和结果:
- 启动服务:
./restart_java_service.sh start
- 停止服务:
./restart_java_service.sh stop
- 重启服务:
./restart_java_service.sh restart
- 启动服务:
- 查看实时日志文件:
tail -f java_service.log
#!/bin/bash
# Java 服务运行名称
SERVICE_NAME="ceshi.jar"
# 日志文件路径
LOG_FILE="java_service.log"
# 检查 Java 进程是否在运行
is_service_running() {
pgrep -f "$SERVICE_NAME" > /dev/null
}
# 记录日志
log_message() {
local timestamp=$(date +"%Y-%m-%d %H:%M:%S")
echo "[$timestamp] $1" >> "$LOG_FILE"
}
# 启动 Java 服务
start_service() {
if is_service_running; then
log_message "Java service is already running."
else
log_message "Starting Java service..."
nohup java -jar $SERVICE_NAME >> "$LOG_FILE" 2>&1 &
log_message "Java service started."
fi
}
# 停止 Java 服务
stop_service() {
if is_service_running; then
log_message "Stopping Java service..."
pkill -f "$SERVICE_NAME"
log_message "Java service stopped."
else
log_message "Java service is not running."
fi
}
# 重启 Java 服务
restart_service() {
stop_service
start_service
}
# 解析脚本参数
case "$1" in
start)
start_service
;;
stop)
stop_service
;;
restart)
restart_service
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac
exit 0