Я пытаюсь создать простой скрипт php, чтобы вернуть список запущенных процессов в формате JSON.php exec ('ps -aeo') не возвращает все процессы
Этот скрипт, конечно, выполняется apache.
У меня все выяснено, кроме одной маленькой детали. Когда скрипт выполняется apache, команда возвращает список запущенных процессов, принадлежащих пользователю «apache».
Есть ли вообще вокруг этого?
exec('ps -aeo',$output);
//then some code to parse the $output and return a JSON string
ВЫВОД:
"processes": [
{
"cpu": "0.0",
"pid": "23698",
"user": "apache",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "23486",
"user": "apache",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "23485",
"user": "apache",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "23484",
"user": "apache",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "23483",
"user": "apache",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "23482",
"user": "apache",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "23481",
"user": "apache",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "23480",
"user": "apache",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "23479",
"user": "apache",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "23478",
"user": "apache",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "1008",
"user": "root",
"command": "/usr/sbin/httpd"
},
{
"cpu": "0.0",
"pid": "959",
"user": "root",
"command": "/usr/sbin/abrtd"
}
]
Try «пс Окс», чтобы снять ограничение «этот пользователь только». – Chad
@cwscribner Удари меня. Ага. Хотя в результате вы можете столкнуться с некоторыми проблемами форматирования, сосать как «зачеркнуть». – Ohgodwhy
Я только что недавно сделал что-то подобное. Возможно, просмотр моего кода поможет вам;) http://geneticcoder.blogspot.com/2014/10/php-process-manager-with-top.html –