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

相关推荐
相思难忘成疾14 分钟前
《RHEL9虚拟机部署及SSH远程登录实践手册》
linux·运维·ssh·虚拟机
cg_ssh26 分钟前
Vue3中样式变量的使用
linux·运维·服务器
TDengine (老段)1 小时前
TDengine IDMP 运维指南 —— 部署架构
大数据·运维·数据库·架构·时序数据库·tdengine·涛思数据
灰阳阳1 小时前
Docker镜像远程(离线)迁移教程
运维·docker·容器
balmtv1 小时前
Linux(CentOS)安装 MySQL
linux·mysql·centos
AC赳赳老秦1 小时前
DeepSeek优化多智能体指令:避免协同冲突,提升自动化流程稳定性
android·大数据·运维·人工智能·自然语言处理·自动化·deepseek
轻颂呀2 小时前
Linux总结
linux·运维·服务器
Albert Edison2 小时前
【ProtoBuf 语法详解】Any 类型
服务器·开发语言·c++·protobuf
-ONLY-¥2 小时前
LNMP架构部署实战全解析
linux
鬓戈2 小时前
SeaweedFS集群上文件遍历和删除
运维·python