一、查看項目是否運行,即PID號
ps -ef | grep 項目名稱(進程名稱)
或ps -aux | grep 項目名稱(進程名稱)
,如下:
[root@VM-24-11-centos ~]# ps -ef | grep java
root 2000995 1 25 Feb19 ? 10:13:34 java -jar server.jar
root 2325465 2325358 0 10:38 pts/0 00:00:00 grep --color=auto java
上述查詢結果中,2000995
是運行server.jar
的PID號即當前進程號。
二、進程號和占用端口號互查
根據進程號查詢占用端口號:netstat -nap | grep 進程號
,如下:
[root@VM-24-11-centos ~]# netstat -nap | grep 2000995
tcp6 0 0 :::25565 :::* LISTEN 2000995/java
unix 3 [ ] STREAM CONNECTED 9283783 2000995/java
unix 2 [ ] STREAM CONNECTED 9283753 2000995/java
unix 3 [ ] STREAM CONNECTED 9283784 2000995/java
unix 3 [ ] STREAM CONNECTED 9284832 2000995/java
unix 2 [ ] STREAM CONNECTED 9282408 2000995/java
unix 3 [ ] STREAM CONNECTED 9284831 2000995/java
上述查詢結果中,25565即該項目所占用端口號。
該命令也可以根據占用端口號查詢進程號:netstat -nap | grep 端口號
,如下:
[root@VM-24-11-centos ~]# netstat -nap | grep 25565
tcp6 0 0 :::25565 :::* LISTEN 2000995/java
三、根據進程號查詢運行項目所在位置
cd /proc/進程號
,該目錄下的cwd
指向的就是項目所在位置,如下:
[root@VM-24-11-centos ~]# cd /proc/2000995
[root@VM-24-11-centos 2000995]# ll
total 0
dr-xr-xr-x 2 root root 0 Feb 21 10:54 attr
-rw-r--r-- 1 root root 0 Feb 21 11:04 autogroup
-r-------- 1 root root 0 Feb 21 11:04 auxv
-r--r--r-- 1 root root 0 Feb 21 11:04 cgroup
--w------- 1 root root 0 Feb 21 11:04 clear_refs
-r--r--r-- 1 root root 0 Feb 21 07:59 cmdline
-rw-r--r-- 1 root root 0 Feb 21 11:04 comm
-rw-r--r-- 1 root root 0 Feb 21 11:04 coredump_filter
-r--r--r-- 1 root root 0 Feb 21 11:04 cpu_resctrl_groups
-r--r--r-- 1 root root 0 Feb 21 11:04 cpuset
lrwxrwxrwx 1 root root 0 Feb 21 08:28 cwd -> /usr/local/games/mc
-r-------- 1 root root 0 Feb 21 11:04 environ
lrwxrwxrwx 1 root root 0 Feb 21 08:01 exe -> /usr/local/jdk/jdk-17.0.2/bin/java
......
可以明顯看出,項目所在目錄是/usr/local/games/mc