linux、centos通过端口号或者程名查看进程所在目录等详细信息

本文详细介绍了如何在Linux系统中使用/proc文件系统获取进程的完整信息,包括绝对路径、运行目录、命令行命令及环境变量等。通过具体实例演示了如何定位由npm run命令启动的Vue项目的运行目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通过ps、top、netstat命令查看进程信息时,只能查到相对路径,查不到的进程的详细信息,如绝对路径等。这时,我们需要通过以下的方法来查看进程的详细信息:
Linux在启动一个进程时,系统会在/proc下创建一个以PID命名的文件夹,在该文件夹下会有我们的进程的信息,其中包括一个名为exe的文件即记录了绝对路径,通过ll或ls –l命令即可查看。

ll /proc/进程id
  • cwd符号链接的是进程运行目录;
  • exe符号连接就是执行程序的绝对路径;
  • cmdline就是程序运行时输入的命令行命令;
  • environ记录了进程运行时的环境变量;
  • fd目录下是进程打开或使用的文件的符号连接。

实例:一个npm run 命令运行的vue项目正在运行,需要查询其目录所在,已知端口号9527.

1、通过netstat命令查看占用端口号的进程得到pid 为16729

[root@VM_0_5_centos proc]# netstat -anp|grep 9527
tcp        0      0 0.0.0.0:9527            0.0.0.0:*               LISTEN      16729/node 

2、打开进程对应的目录

 ll /proc/16729/

执行ll命令得到如下信息:既可以找到程序所在位置

 

 

 

 

 

 

### CentOS 查找端口号对应进程命令 在 CentOS 中,可以使用 `lsof` 或者 `netstat` 工具来查找与特定端口号关联的进程。以下是两种常用的方法: #### 方法一: 使用 `lsof` 通过 `lsof` (list open files) 命令能够显示哪些文件被哪些进程打开,对于网络连接来说,套接字也是一种文件。 要查找监听某个特定端口(例如 80 端口)的服务及其对应的 PID 号码,可执行如下命令[^2]: ```bash lsof -i :80 | grep LISTEN ``` 此命令会返回一系列信息列,其中包含了 IP 地址、协议以及最重要的 PID 列。如果想要进一步简化输出只获取 kill 命令用于终止这些进程,则可以用管道符组合其他工具处理输出结果,像这样: ```bash lsof -i :80 | grep LISTEN | awk '{print "kill -9", $2}' | sh ``` #### 方法二: 使用 `netstat` 另一种方式是利用 `netstat` 来完成相同的操作。该命令提供了关于 Linux 系统上活动 TCP/IP 和 UDP/SCTP 连接的信息。 为了找出正在使用的指定端口(比如这里还是以 HTTP 的默认端口为例),应当运行下面这条指令: ```bash netstat -tuln | grep ':80' ``` 这里的选项含义分别为 `-t` 表示TCP, `-u` 是UDP, `-l` 显示处于监听状态的服务程序, 而 `-n` 参数用来阻止反向DNS查询从而加快速度并减少不必要的延迟。 这两种方法都可以有效地帮助管理员定位到占用给定端口的具体应用程序或服务,并采取相应措施解决潜在冲突问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值