根据端口查找java程序

lsof -i:80XX

netstat -anp|grep 80xx

ps -ef|grep java

ps -ef|grep tomcat

 

ps -ef|grep 进程号PID就能获取具体地址

ll /proc/进程号PID/cwd 就能获取路径

centos 下无法使用lsof命令:“-bash: lsof: command not found”
1.问题描述:
2.解决办法 原因:未安装lsof

# yum install lsof
1
安装成功后 执行命令,例如查询使用22端口的进程

3.lsof 的常用命令:
lsof -i:(端口号)
lsof -i:3306 (3306默认是mysql服务器的端口)
lsof -i:3690 (3690默认是svn服务端的端口)

方法 1:通过 Java 进程 PID 查找端口

  1. 获取 Java 进程 PID
    # 查找所有 Java 进程(包含进程名和 PID)
    ps -ef | grep java
    # 或直接获取 PID(精确匹配,避免包含 grep 自身)
    PID=$(pgrep -f 'java')  # 若有多个 Java 进程,指定更精确的关键词,如 `pgrep -f 'YourAppName'`
    
  2. 根据 PID 查看端口
    # 使用 lsof(需安装,多数 Linux 已预装)
    lsof -p $PID -i -n -P | grep TCP  # 显示该 PID 所有 TCP 端口
    # 或过滤监听状态(LISTEN)的端口
    lsof -p $PID -i :::TCP -sTCP:LISTEN -n -P
     输出示例:
    • plaintext
      java    12345   user    12u  IPv4 123456789   0t0  TCP *:8080 (LISTEN)

      其中 *:8080 表示监听 8080 端口。

方法 2:直接搜索 Java 相关端口

# 使用 netstat(需安装 net-tools)
netstat -tulnpe | grep java | grep LISTEN
# 或使用 ss(新系统推荐,性能更好)
ss -tulnpe | grep java | grep LISTEN
posted @ 2024-03-21 17:38  全琪俊  阅读(73)  评论(0)    收藏  举报