Получить определенную информацию от passthru и top

Я попытался использовать это возможное решение без какой-либо удачи:

$test = passthru('/usr/bin/top -b -n 1');
preg_match('([0-9]+ total)', $test, $matches);
var_dump($matches);

Этот код показывает следующий текст:

top - 19:15:43 up 31 days, 23 min, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 85 total, 1 running, 84 sleeping, 0 stopped, 0 zombie Cpu(s): 0.1%us, 0.0%sy, 0.0%ni, 99.8%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 247980k total, 224320k used, 23660k free, 68428k buffers Swap: 521212k total, 37120k used, 484092k free [...] 0.4 0:00.00 top array(0) { }

Как я могу взять определенную информацию, такую ​​как общее количество задач, чтобы она показывалась только для примера 84 total?

Заранее спасибо.

1 ответ

Решение

Я получил его на работу благодаря Бармару и Сатишу. Вот правильный код:

exec("/usr/bin/top -b -n 1 | grep Tasks: | awk -F' ' '{print $4}'")

Большое спасибо!:)

Другие вопросы по тегам