shell 实现一键启动 jar服务,并在检测到已有进程时自动杀掉进程再次启动
时间: 2023-03-22 12:01:37 浏览: 114
Shell实现判断进程是否存在并重新启动脚本分享
你可以编写一个简单的 shell 脚本来实现这个功能。下面是一个可能的实现:
```sh
#!/bin/bash
# 定义 jar 文件路径和进程名
jar_path="/path/to/your/jar/file.jar"
process_name="your-process-name"
# 检查进程是否正在运行
if pgrep -f $process_name > /dev/null; then
echo "Stopping existing process..."
pkill -f $process_name
fi
# 启动新的进程
echo "Starting new process..."
java -jar $jar_path &
```
这个脚本的流程如下:
1. 定义 jar 文件路径和进程名。
2. 使用 `pgrep` 命令检查进程是否正在运行。如果进程正在运行,使用 `pkill` 命令杀掉进程。
3. 启动新的进程,使用 `java -jar` 命令启动 jar 文件,并使用 `&` 将其放入后台运行。
将以上代码保存为一个文件,例如 `start.sh`,然后使用 `chmod +x start.sh` 命令赋予脚本可执行权限。接着在命令行中运行 `./start.sh` 即可启动服务。
阅读全文