我想编写一个 php 脚本来使用 top 命令监视特定进程并写入文件。
我用于top -p pid
监视特定进程,并且还为此编写了一个 shell 脚本。
#!/bin/bash
FILE="/home/test/nik/myscriptoutput2";
TIMEOUT=5;
PROCNAME='init';
counter=0;
echo 'counter value is :- '$counter
while [ $counter -lt 3 ]
do
echo 'inside while'
top -b -n 1 |grep $PROCNAME >> $FILE
sleep $TIMEOUT
counter=$((counter+1))
echo $counter
done
echo 'while loop end'
该脚本将在 5 秒后监视 init 进程 3 次并将其写入文件。
如何用 PHP 编写相同的脚本?
答案1
为什么不使用
top -bd 5 -n 3 -p `pidof init` >> /home/test/nik/myscriptoutput2
而不是你的整个脚本......
在 PHP 中你可以使用
<?php
$file = "/home/test/nik/myscriptoutput2";
$output = shell_exec('top -bd 5 -n 3 -p `pidof init`');
file_put_contents($file, $output);
?>