linux 定位进程文件路径

有时候用top 打开任务管理器时知道某个任务的进程的存在,但不知道是哪个文件,只需两条指令只可定位进程的可执行文件路径

  1. 使用 ls -l /proc/<PID>/cwd 命令来查找该进程的当前工作目录。
  2. 使用 cat /proc/<PID>/cmdline 命令来查看该进程的命令行参数,参数可能包含路径信息。
bash 复制代码
# 查看运行目录
ls -l /proc/<PID>/cwd

# 查看执行参数
cat /proc/<PID>/cmdline

示例:

这里以查找一个python运行的进程文件为例子:

1 先找出所有python进程

bash 复制代码
ps -ef|grep python

找出所有的python 进程如下图:

这里我们 选择定位上图的mon.py文件路径为例,它的进程ID是 2921

bash 复制代码
ls -l /proc/2921/cwd

执行后我们找到执行此进程的当前路径,但还没有确定运行的python文件名称mon.py,需要查看执行参数:

bash 复制代码
cat /proc/2921/cmdline

如上图,执行后发现是 python3 mon.py ,这里的mon.py是当前目录,也就是说是在/usr/bin目录下执行了 python3 mon.py ,所以 mon.py文件就在/usr/bin/mon.py位置。

相关推荐
me832几秒前
【Linux】解决Docker-Compose拉取Jenkins时失败问题。
linux·docker·jenkins
kaoa00013 分钟前
Linux入门攻坚——73、运维OS Provisioning阶段工具之PXE、Cobbler
linux·运维
Lugas Luo17 分钟前
SATA Port Multiplier (SATA 集线器) 原理与驱动架构深度剖析
linux·嵌入式硬件
123过去20 分钟前
fcrackzip使用教程
linux·网络·测试工具·安全
东北甜妹22 分钟前
MYSQL
运维
supersolon29 分钟前
PVE通过命令删除爱快虚拟机
服务器·虚拟机·pve·ikuai·爱快
水月天涯31 分钟前
Mac系统下制作 Ubuntu镜像(小白教程)
linux·ubuntu·macos
A.A呐31 分钟前
【Linux第二十三章】传输层
linux·运维·服务器
Yupureki31 分钟前
《Linux网络编程》1.网络基础
linux·运维·服务器·c语言·网络·c++
爱学习的小囧32 分钟前
ESXi 重置密码详细攻略(全场景覆盖)
服务器·esxi·vmware·虚拟化