Linxu后台运行Java的jar包
1、直接运行
java -jar myjar-0.0.1-SNAPSHOT.jar
这种方式需要一直挂载终端(Ctrl+C会结束进程、关闭shell也会结束进程),故不符合需求
2、后台运行
A、Ctrl+C不会结束进程``
java -jar myjar-0.0.1-SNAPSHOT.jar &
在命令后加 & ,即可后台运行(Ctrl+C不会结束进程)。但如果关闭shell窗口,该进程仍会终止。
B、退出终端都不会结束进程
nohup java -jar myjar-0.0.1-SNAPSHOT.jar > myjar.log 2>&1 &
-
nohup(no hang up,即不挂起):用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行
-
> myjar.log:重定向输出日志在当前目录下的myjar.log文件
-
2>&1 解释:
将标准错误 2 重定向到标准输出 &1 ,标准输出 &1 再被重定向输入到 myjar.log 文件中。
- 0 – stdin (standard input,标准输入)
- 1 – stdout (standard output,标准输出)
- 2 – stderr (standard error,标准错误输出)
3、退出进程
ps -aux | grep "java"
查询所有与java相关的进程
参数说明:
- a : 显示所有程序
- u : 以用户为主的格式来显示
- x : 显示所有程序,不区分终端机
另外也可以使用 ps -def | grep "java" 命令来查找。
找到 PID 后,就可以使用 kill PID 或是 kill -9 PID 来删除。
- kill -9 PID:为强制杀死进程