首页/系统/Linux 运维命令速查/procfs 直接读进程数据
本包目录(613 条)
文件与目录76 条文本处理77 条网络命令82 条
进程与作业69 条
磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

procfs 直接读进程数据

/proc/PID 是内核暴露的进程视图:cmdline/environ/cwd/exe/fd 能拿到 ps 看不到的细节,排查环境与句柄的终极窗口。

Linux 运维命令速查系统更新于 2026-10-12
用途从 /proc 读取进程原始信息
语法cat /proc/PID/{cmdline,status,environ,limits} 等
技巧\0 分隔用 tr '\0' ' ' 转可读

常用示例

常用示例
tr '\0' ' ' < /proc/1234/cmdline; echo          # 完整命令行
 tr '\0' '\n' < /proc/1234/environ | head      # 启动环境变量
ls -l /proc/1234/cwd /proc/1234/exe           # 工作目录与可执行文件
ls /proc/1234/fd | wc -l                      # 打开的文件数
cat /proc/1234/status | head -20              # 状态与内存
cat /proc/1234/limits                          # 资源限制
cat /proc/1234/wchan; echo                     # 卡在哪个内核函数
进程消失后 /proc/PID 就没了:疑似异常退出要第一时间取证(cmdline/environ/fd 列表)。

易错点

  • cmdline/environ 以 \0 分隔:直接 cat 会连成一片看不出边界,用 tr 或 xargs -0 处理
  • environ 只含启动时环境:运行中 export 的变化不在里面

数据来源与参考

  • proc(5)(Linux man-pages 手册)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌