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

相关推荐
小小、码农5 分钟前
Ubuntu / Linux 软件安装完整笔记
linux·笔记·ubuntu
yunwei3710 分钟前
eBPF 开发实践:使用 sockops 加速网络请求转发
linux·后端·性能优化
rest102417 分钟前
做io测试
linux·服务器·网络
一条破秋裤19 分钟前
Linux 网络编程基础:网络分类、分层模型与数据封装
linux·运维·网络
她说彩礼65万28 分钟前
C语言 单引号与双引号
java·服务器·c语言
FACELESS VOID35 分钟前
wsl下使用npm,错误识别到了windows下的npm
linux·windows·npm
anew___36 分钟前
《从零手写操作系统 (19):Ext2文件系统实战——从内存到磁盘的跨越》
java·服务器·前端·数据库·算法
小白的码BUG之路37 分钟前
Docker -- 构建ruoyi-system镜像
运维·docker·容器
H.莓飛43 分钟前
【数据结构】栈
linux·开发语言·数据结构·算法·centos
LRL_44 分钟前
【云原生】Oracle Linux 9.6 离线(Air-Gapped)环境下安装 Longhorn 及其底层依赖(iSCSI/NFS)完全指南
linux·云原生·oracle