jar包启动使用logs替换nohup日志文件

在日常开发和运维工作中,Java 应用的启动、停止是高频操作。为了简化 CMS 服务(agent-server-48081)的运维流程,我们编写了两套轻量化脚本 ------start_cms.sh(启动脚本)和 stop_cms.sh(停止脚本),无需复杂配置,直接上手使用。本文将详细介绍脚本功能、使用方法及核心逻辑。

一、脚本核心作用

  • 启动脚本(start_cms.sh):一键启动 CMS 服务,自动指定 Java 环境、运行环境,同时记录完整运行日志,启动后实时查看日志输出。
  • 停止脚本(stop_cms.sh):快速查找 CMS 服务进程并强制终止,确保服务彻底停稳,避免端口占用等问题。

二、启动脚本:start_cms.sh

1. 脚本内容

复制代码
#!/bin/bash

export JAVA_HOME=/www/server/java/jdk-17.0.8

# 直接使用当前目录下的 logs 目录
LOG_FILE="./logs/agent-server-48081-$(date +%Y%m%d).log"

# 启动并将所有输出重定向到日志文件
nohup $JAVA_HOME/bin/java \
  -Dspring.profiles.active=local \
  -jar agent-server-48081.jar >> "$LOG_FILE" 2>&1 &

# 等待日志文件创建
sleep 2

# 查看日志
tail -f "$LOG_FILE"

2. 启动脚本

./start_cms.sh

三、停止脚本:stop_cms.sh

1. 脚本内容

复制代码
#!/bin/bash

cd `pwd`

ps aux | grep  'agent-server-48081.jar' | awk '{print $2}' | xargs kill -9

2. 启动脚本

./stop_cms.sh

相关推荐
寻星探路3 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
陌上丨6 小时前
Redis的Key和Value的设计原则有哪些?
数据库·redis·缓存
曹牧6 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
AI_56786 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
ccecw6 小时前
Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错
数据库·mysql
wdfk_prog6 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习
JH30736 小时前
达梦数据库与MySQL的核心差异解析:从特性到实践
数据库·mysql
数据知道6 小时前
PostgreSQL 核心原理:如何利用多核 CPU 加速大数据量扫描(并行查询)
数据库·postgresql
爬山算法6 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate