我正在尝试使用 PHP
获取当前在我的 Ubuntu 服务器上运行的所有进程的列表。理想情况下,我想获得以下信息:
- 进程号
- 用于执行进程的命令
- 过程中的论点
我知道我可以使用 exec
调用 ps
来列出当前正在运行的进程。
exec('ps aux', $output);
但是,输出是用任意数量的空格格式化的,所以解析它并不是世界上最简单的事情。
我可能会使用 explode
或 preg_split
来解析,但是有没有更简单的方法来使用 php< 获取所有正在运行的进程的列表
,以及进程 ID、命令和参数?
最佳答案
大部分归功于 meuh .
ps ahxwwo pid,command
给了我需要的三个项目,但由于任意空间格式,它仍然很难解析。
但是,可以删除空格格式。
ps ahxwwo pid:1,command:1
使用 explode
以空格作为分隔符现在可以保证索引 0 是 pid,索引 1 是命令,其余索引是参数。
关于php - 使用 PHP 列出服务器上所有正在运行的进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32535977/