Linux /proc/$pid Linux进程文件
Linux中
/proc/$pid
目录下 存放着所有的进程信息
博客1
博客2
首先在/root
目录下,启动一个进程
# 启动一个简单的文件服务器,访问端口9999
python -m http.server 9999
查询这个进程的pid
号
另外起一个终端shell,去查询刚才进程的pid号
lsof -i:9999
# 或
ps -ef | grep python
我的pid
号是 1780
# 进入进程的linux目录,/proc 下面包含所有pid号的文件夹
cd /proc/1780
ls
ll
执行ls 和 ll 可以看到很多信息,具体的可以参考
https://www.linuxprobe.com/linux-proc-pid.html
- exe 为实际运行程序的符号链接
- fd 是一个目录,包含进程打开文件的情况
- environ 显示进程的环境变量
- cmdline 是一个只读文件,包含进程的完整命令行信息
等等
cd /proc/1780/fd
echo “1111” > 0
我们会发现,python -m http.server 9999
这个进程也会输出1111
, 因为这个 0
就是这个进程的一个文件描述符,可能是标准输出/错误输出 啥的。
还没有评论,来说两句吧...