创建脚本文件
vi /usr/bin/jartools
#!/bin/bash
# 检查参数是否为空
if [ $# -eq 0 ]; then
echo "请提供至少一个jar包作为参数"
exit 1
fi
# 检查是否提供了有效的操作
if [ "$1" != "start" ] && [ "$1" != "stop" ]; then
echo "无效的参数,请提供start或stop参数"
exit 1
fi
# 设置变量
COMMAND=$1
JARS="${@:2}"
jar_path=/server/java
# 执行操作
if [ "$COMMAND" = "start" ]; then
for jar in $JARS
do
jarfile="${jar_path}/xx-${jar}-encrypted.jar"
nohup java -javaagent:$jarfile='-pwd uN97L2WG' -Dfile.encoding=utf-8 -Xmx2048m -Xms256m -jar $jarfile >/dev/null 2>&1 &
echo "service ${jar} started"
done
elif [ "$COMMAND" = "stop" ]; then
for jar in $JARS
do
jarfile="${jar_path}/xx-${jar}-encrypted.jar"
pid=$(ps -ef | grep $jarfile | grep -v grep | awk '{print $2}')
if [ "x$pid" != "x" ]; then
kill -9 $pid
for i in {1..30}; do
sleep 1
echo -n .
pid=$(ps -ef | grep $jarfile | grep -v grep | awk '{print $2}')
if [ "x$pid" == "x" ]; then
echo "service ${jar} shutdown"
break
fi
done
fi
done
elif [ "$COMMAND" = "restart" ]; then
jartools stop $JARS
jartools start $JARS
fi
使用
#关闭服务
jartools stop office fs
#启动服务
jartools start office fs