具体代码如下所示:
#!/bin/bash cd `dirname $0` cur_shell_dir=`pwd` cur_shell_name=`basename ${bash_source}` #修改这里jar包名即可 jar_name="xxxxxxxxxxxx.jar" jar_path=$cur_shell_dir/$jar_name #java_mem_opts=" -server -xms1024m -xmx1024m -xx:permsize=128m" java_mem_opts="" #spring_profiles_activ="-dspring.profiles.active=eureka2" spring_profiles_activ="" log_dir=$cur_shell_dir/logs log_path=$log_dir/${jar_name}.log echo_help() { echo -e "syntax: sh $cur_shell_name start|stop" } if [ -z $1 ];then echo_help exit 1 fi if [ ! -d "$log_dir" ];then mkdir "$log_dir" fi if [ ! -f "$log_path" ];then touch "$log_dir" fi if [ "$1" == "start" ];then # check server pids=`ps --no-heading -c java -f --width 1000 | grep $jar_name | awk '{print $2}'` if [ -n "$pids" ]; then echo -e "error: the $jar_name already started and the pid is ${pids}." exit 1 fi echo "starting the $jar_name..." # start nohup java $java_mem_opts -jar $spring_profiles_activ $jar_path >> $log_path 2>&1 & count=0 while [ $count -lt 1 ]; do sleep 1 count=`ps --no-heading -c java -f --width 1000 | grep "$jar_name" | awk '{print $2}' | wc -l` if [ $count -gt 0 ]; then break fi done pids=`ps --no-heading -c java -f --width 1000 | grep "$jar_name" | awk '{print $2}'` echo "${jar_name} started and the pid is ${pids}." echo "you can check the log file in ${log_path} for details." elif [ "$1" == "stop" ];then pids=`ps --no-heading -c java -f --width 1000 | grep $jar_name | awk '{print $2}'` if [ -z "$pids" ]; then echo "error:the $jar_name does not started!" exit 1 fi echo -e "stopping the $jar_name..." for pid in $pids; do kill $pid > /dev/null 2>&1 done count=0 while [ $count -lt 1 ]; do sleep 1 count=1 for pid in $pids ; do pid_exist=`ps --no-heading -p $pid` if [ -n "$pid_exist" ]; then count=0 break fi done done echo -e "${jar_name} stopped and the pid is ${pids}." else echo_help exit 1 fi
以上代码只需修改jar包名即可使用
启动jar包:
./xxxx.sh start
停止 jar包
./xxxx.sh stop
The above is the detailed content of How to start and stop the SpringBoot jar program in Linux. For more information, please follow other related articles on the PHP Chinese website!