以Java的jar包服务为例,启动停止带服务检查的shell脚本,提供单个服务启动停止 和 多个服务同时启动停止,
最简单脚本几行就可以了,启动[ java 启动参数 -jar xxx.jar ],停止 [找到pid,kill掉],我这个脚本就是加了点判断和颜色输出
使用:需要修改 jdk路径、包目录、项目名、包名
例如:jar包完整名称为:test-web.jar,[test]就是项目名,[web]就是包名,自定义修改即可
#!/bin/bash # jdk jdk="jdk路径" # 项目名 pjname="xxxxxx" # jar包目录 dir="/java/$pjname" # 多个jar包名称 jar1="xxx" jar2="xxx" jar3="xxx" jar4="xxx" alljar="$jar1 $jar2 $jar3 $jar4" # 成功 success(){ echo -e "\033[32m[$pjname-$1]服务$2\033[0m" } # 失败 fail(){ echo -e "\033[31m[$pjname-$1]服务$2\033[0m" } # 警告 waring(){ echo -e "\033[33m 请输入正确的要${1}的服务名称:[ $jar1 | $jar2 | $jar3 | $jar4 ]\n 如果要${1}所有服务请使用: all\033[0m" } # 提示 tips(){ echo -e "\033[36m请输入正确的参数:[ start | stop ]\033[0m" } # 服务检查 started(){ jps|grep $pjname-$1 && success $1 已在运行中 && $2 } verifysa(){ started $1 continue } verifys(){ started $1 exit } # 服务检查 killed(){ ps -ef |grep -v "grep"|grep "$pjname-$1"|awk '{print $2}'|xargs kill -9 >/dev/null 2>&1 && success $1 停止成功|| fail $1 未启动 && $2 } verifyt(){ killed $1 exit } verifyta(){ killed $1 continue } # 启动后验证 verify() { jps|grep $pjname-$1 && success $1 ${2}成功 || fail $1 ${2}失败 } # 启动 starting(){ $jdk -jar $dir/$pjname-$1.jar >/dev/null 2>&1 & verify $1 启动 } # 停止 stoping(){ ps -ef |grep -v "grep"|grep "$pjname-$1"|awk '{print $2}'|xargs kill -9 >/dev/null 2>&1 verify $1 停止 } # 执行 case $1 in start) if [[ $2 = $jar1 || $2 = $jar2 || $2 = $jar3 || $2 = $jar4 ]];then verifys $2 starting $2 elif [[ $2 = all ]];then for i in $alljar;do verifysa $i;starting $i;done else waring 启动 fi ;; stop) if [[ $2 = $jar1 || $2 = $jar2 || $2 = $jar3 || $2 = $jar4 ]] then verifyt $2 stoping $2 elif [[ $2 = all ]];then for i in $alljar;do verifyta $i;stoping $i;done else waring 停止 fi ;; *) tips ;; esac
脚本执行效果图
启动服务
停止服务
本文最后记录时间 2024-03-30
文章链接地址:https://me.jinchuang.org/archives/1153.html
本站文章除注明[转载|引用|来源],均为本站原创内容,转载前请注明出处
文章链接地址:https://me.jinchuang.org/archives/1153.html
本站文章除注明[转载|引用|来源],均为本站原创内容,转载前请注明出处
这特效浏览太占用资源了
? 我电脑浏览器打开都是很顺畅没啥问题,所以就开了
流畅度没问题,就是浏览器整体负载上来了