java简单sh脚本

上传sh deploy.sh

scp 本地ar位置 用户@x.x.x.x(服务器ip):服务器指定jar目录

服务器重新部署sh restart.sh
jar_path=xx
service_name=xx
log_file=/apps/logs/service_name/service_name.log
jar_name=$service_name.jar

rm jar_path/jar_name
mv jar_path/service_name*.jar jar_path/jar_name

echo 'jar准备完毕'

指定 Java 进程的名称

process_name="java"

指定 Java 进程的关键词,用于进一步过滤进程

在此例中,假设只想杀掉特定参数的 Java 进程

process_keyword=$jar_name

使用 ps 命令列出所有正在运行的进程,并使用 grep 命令过滤 Java 进程

再使用 grep 命令过滤出指定的关键词进一步匹配

pid=(ps aux | grep -v grep | grep "process_name" | grep "process_keyword" | awk '{print2}')

if [ -n "$pid" ]; then

如果找到了匹配的进程ID,使用 kill 命令杀掉该进程

echo "Java process found: PID=pid, killing the process..." kill "pid"
else

没有找到符合条件的进程,输出错误消息

echo "Cannot find Java process matching the criteria."
fi

echo '进程检测完毕'
nohup java -server -Xms256M -Xmx256M -Xss32M -Duser.timezone=GMT+8 -jar jar_path/jar_name --server.port=8080 --spring.profiles.active=pro > $log_file 2>&1 &
echo '启动完成'

也可以在服务器上进去打包 脚本也可以差不多 不过多一个从git拉取和maven打包的过程 这里就暂时不共享了

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容