linux下通过进程名查看其占用端口:
1、先查看进程pid
ps -ef | grep 进程名
2、通过pid查看占用端口
netstat -nap | grep 进程pid
例:通过tomcat进程查看对应的端口号
#查看tomcat进程pid:
命令:
ps -ef | grep tomcat
结果:
root 3287 22225 0 13:40 pts/3 00:00:00 grep --color=auto tomcat
root 17957 1 0 Mar05 ? 02:27:28 /usr/local/jdk1.8.0_151/bin/java -Djava.util.logging.config.file=/data2/opt/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -agentlib:jdwp=transport=dt_socket,address=57031,suspend=n,server=y -Djava.endorsed.dirs=/data2/opt/tomcat/endorsed -classpath /data2/opt/tomcat/bin/bootstrap.jar:/data2/opt/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/data2/opt/tomcat -Dcatalina.home=/data2/opt/tomcat -Djava.io.tmpdir=/data2/opt/tomcat/temp org.apache.catalina.startup.Bootstrap start
#通过tomcat进程pid查看占用端口(进程pid为9836)
命令:
netstat -nap | grep 17957
结果:
tcp 0 0 0.0.0.0:57031 0.0.0.0:* LISTEN 17957/java
tcp6 0 0 :::8009 :::* LISTEN 17957/java
tcp6 0 0 :::8081 :::* LISTEN 17957/java
tcp6 0 0 :::9397 :::* LISTEN 17957/java
tcp6 0 0 ::1:8005 :::* LISTEN 17957/java
tcp6 0 0 192.168.100.100:45432 192.168.100.101:7004 ESTABLISHED 17957/java
tcp6 0 0 192.168.100.100:9397 10.10.10.10:61555 ESTABLISHED 17957/java
tcp6 0 0 192.168.100.100:9397 10.10.10.10:60203 ESTABLISHED 17957/java
tcp6 0 0 192.168.100.100:40516 192.168.100.101:7003 ESTABLISHED 17957/java
tcp6 0 0 192.168.100.100:50130 192.168.100.101:7002 ESTABLISHED 17957/java
tcp6 0 0 192.168.100.100:9397 10.102.10.10:50583 ESTABLISHED 17957/java
linux通过端口查看进程:
netstat -nap | grep 端口号
例:查看8081号端口对应的进程名
tcp 0 0 127.0.0.1:48081 0.0.0.0:* LISTEN 5234/python
tcp 0 0 192.168.100.175:35242 192.168.100.175:8081 TIME_WAIT -
tcp6 0 0 :::8081 :::* LISTEN 17957/java
查看端口是否被占用快捷方法:
lsof -i: 端口号
PS:如果提示lsof命令不支持,需要先安装lsof : yum intall lsof 或者 apt -get install lsof
例:查看3306和8081号是否被占用
[root@dmdev175 home]# lsof -i:3306
[root@dmdev175 home]# lsof -i:8081
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 17957 root 47u IPv6 2574430386 0t0 TCP *:tproxy (LISTEN)