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

相关推荐
宝塔面板1 分钟前
宝塔拨测正式发布:网站测速、持续监控、异常告警
运维
Doris__HE2 分钟前
【元脑服务器NF8260G7-NF8260M7技术规格分享】
运维·服务器·网络·数据库·性能优化
wdfk_prog6 分钟前
ROS教程06:ROS1 Node 启动与停止流程
运维·缓存·docker·容器·ros
济南凡维13 分钟前
Zebra Designer3试用文档
服务器·网络·zebra·打印机·斑马打印机
吴声子夜歌28 分钟前
Shell编程实例——脚本编程的附加特性
linux·运维·shell
yunwei3736 分钟前
eBPF 教程:BPF 调度器入门
linux·后端·性能优化
Wang's Blog38 分钟前
Java 服务器: Linux-MySQL的rpm安装与初始化配置
java·服务器
叶总没有会41 分钟前
Docker 基础+实战
运维·docker·云原生·容器
byte轻骑兵1 小时前
【BlueZ 】sdp 模块:服务发现协议的用户态实现基础
linux·人工智能·bluez·电脑蓝牙·嵌入式蓝牙
赴生-1 小时前
Liunx 操作系统 进程控制(上)
linux