编写一个在centos7上关闭jar包的shell脚本
时间: 2024-05-07 08:19:20 浏览: 10
可以使用以下的 shell 脚本来关闭一个正在运行的 jar 包:
```sh
#!/bin/bash
# 获取 jar 包进程的 PID
pid=$(ps -ef | grep myapp.jar | grep -v grep | awk '{print $2}')
if [ -z "$pid" ]; then
echo "myapp.jar is not running"
else
# 关闭 jar 包进程
kill $pid
echo "myapp.jar has been stopped"
fi
```
在脚本中,首先使用 ps 命令和 grep 命令来获取运行中的 myapp.jar 进程的 PID。如果找不到 PID,则输出一条消息表示 myapp.jar 没有在运行。否则,使用 kill 命令来关闭该进程,并输出一条消息表示 myapp.jar 已被关闭。
请注意,脚本中的 myapp.jar 需要替换为你实际运行的 jar 包的名称。此外,需要给脚本添加执行权限,以便能够运行。可以使用以下命令添加执行权限:
```
chmod +x script.sh
```
其中 `script.sh` 是你的脚本文件名。
相关问题
编写一个在centos7上运行jar包的shell脚本
可以按照以下步骤编写一个在CentOS 7上运行jar包的shell脚本:
1. 创建一个新的文件,例如`run.sh`,并加入以下内容:
```
#!/bin/bash
java -jar /path/to/your/jar/file.jar
```
其中,`/path/to/your/jar/file.jar`是指你的jar文件的路径。
2. 保存并关闭文件,并将其设置为可执行文件:
```
chmod +x run.sh
```
3. 运行脚本:
```
./run.sh
```
这将启动你的jar文件并在终端中显示输出。如果你希望在后台运行该文件,可以使用以下命令:
```
nohup ./run.sh &
```
这将在后台运行你的jar文件,并将输出保存到`nohup.out`文件中。
编写一个可以在entos上自动打包部署前端项目的shell脚本
当然可以!以下是一个简单的示例,演示了如何编写一个可以在CentOS上自动打包部署前端项目的shell脚本:
```bash
#!/bin/bash
# 定义项目路径和目标目录
project_path="/path/to/frontend/project"
target_dir="/var/www/html"
# 进入项目目录
cd $project_path
# 安装依赖
npm install
# 执行打包
npm run build
# 清空目标目录
rm -rf $target_dir/*
# 将打包文件复制到目标目录
cp -r dist/* $target_dir
# 重启Web服务器(如果需要)
systemctl restart httpd
```
请注意,上述示例假设你的前端项目使用npm作为包管理器,并且具有`build`命令来执行打包操作。如果你使用其他工具或构建脚本,请相应地修改脚本。
要使用此脚本,将其保存为`deploy.sh`(或其他任何名称),然后在终端中运行以下命令以使其可执行:
```bash
chmod +x deploy.sh
```
最后,运行脚本:
```bash
./deploy.sh
```
脚本将自动进入项目目录,安装依赖,执行打包操作,清空目标目录,并将打包文件复制到目标目录。如果你的Web服务器是Apache,并且你希望在部署后重启它,可以取消注释最后一行以执行重启操作。
请根据你的具体需求进行修改和调整,例如更改项目路径、目标目录或其他部署步骤。