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位置。

相关推荐
Rondox2 分钟前
wake on lan 电脑局域网内远程开机
服务器·网络·电脑
Saniffer_SH4 分钟前
【高清视频】实验室搭建PCIe 6.0测试环境需要的retimer卡介绍
服务器·驱动开发·测试工具·fpga开发·计算机外设·硬件架构·压力测试
i建模12 分钟前
统一pnpm的版本
运维
sdm07042716 分钟前
Linux-基础IO
linux·运维·操作系统·理解文件
OpsEye21 分钟前
CPU 只有 30%,系统却慢到不可用?
运维
爱吃生蚝的于勒25 分钟前
【Linux】网络之http协议
linux·运维·服务器·网络·数据结构·c++·http
创世宇图25 分钟前
Alibaba Cloud Linux 安装生产环境-Tomcat
linux·tomcat
蜜獾云27 分钟前
Elastic Stack基础概念
运维·jenkins
fakerth29 分钟前
【Linux】调度器底层原理深入探索
linux·c++·操作系统
野犬寒鸦29 分钟前
JVM垃圾回收机制深度解析(G1篇)(垃圾回收过程及专业名词详解)(补充)
java·服务器·开发语言·jvm·后端·面试