一、后台運行jar
[root@VM-0-4-centos java]# nohup java -jar /home/spring_one_demo-0.0.1-SNAPSHOT.jar > spring.log 2>&1 &
上述命令會使jar包在后台運行,用戶退出也不會終止程序。
其中:
末尾的&,使用指定后台運行
nohup命令表示,系統后台不掛斷地運行命令,退出終端不會影響程序的運行。不加這個命令,即使使用&,在退出遠程連接后還是終止程序。
> spring.log,是nohup的相關命令,表示將原本會打印在控制台的文件打印到spring.log里。該文件如果未指定路徑,會在當前目錄生成。
2>&1,同樣是nohup相關,表示將標准錯誤 2 重定向到標准輸出 &1 ,標准輸出 &1 再被重定向輸入到 runoob.log 文件中。如果不加這一命令會生成如下提示:
[root@VM-0-4-centos java]# nohup: ignoring input and redirecting stderr to stdout
二、終止jar程序
1、首先找到該jar在運行時產生的進程號pid
a、在運行成功時會自動返回一個pid,如下圖5509既是。
b、根據jar所占用端口(如果有端口占用),如下圖5509既是。
[root@VM-0-4-centos java]# netstat -nlp | grep :80
c、根據java程序查找
[root@VM-0-4-centos java]# ps -ef | grep java
2、根據進程號pid,結束進程
[root@VM-0-4-centos java]# kill -9 5509
檢查運行結果: