jar包运行
windows和linux 一样样的java -jar
终端不关闭时运行
java -jar xxx.jar
:当前ssh窗口被锁定,不可进行其它操作,ctrl + c或直接关闭窗口停止程序;
java -jar xxxxx.jar &
: 当前ssh窗口不被锁定,可进行其它操作,当窗口关闭时,程序退出;
nohup java -jar xxx.jar &
:后台挂起程序,当账户退出或终端关闭时程序停止,日志文件存储在当前目录的nohup.out文件中;
终端关闭 后台运行
nohup java -jar xxxxxx.jar > log.txt &
:指定输出日志到log.txt文件,后台挂起程序,当账户退出或终端关闭时,程序仍然运行;
nohup
表示生成日志文件nohup.out
,&
表示后台新启一个线程执行该命令。
查看运行中的jar包
以下几种命令均可
ps -ef | grep java
查看当前运行的java进程
ps -ef | grep xxx.jar
查看当前运行的jar进程
ps -ef
查看所有 进程 可以看到哪一列是PID 和PPID
jar的终止
kill -9 jar包pid
jar启停脚本
# start.sh
nohup java -jar 包名.jar >log.txt &
echo $! > /var/run/包名.pid
# 将jar包启动对应的pid写入文件中,为停止时提供pid
# shutdown.sh
PID=$(cat /var/run/包名.pid)
kill -9 $PID
给脚本添加可执行权限
sudo chmod +x ./test.sh