在PHP中,exec()
函数允许你执行外部命令
ps
命令,可以使用/usr/bin/ps
(在Linux系统上)或C:\Windows\System32\ps
(在Windows系统上)。exec('/usr/bin/ps aux', $output, $return_var);
shell_exec()
函数检查命令是否存在于系统中。if (shell_exec('which ps')) {
exec('ps aux', $output, $return_var);
} else {
echo 'Command not found';
}
exec()
函数返回一个包含命令输出的数组。你可以遍历这个数组以获取有关用户获取成本的信息。exec('ps aux', $output, $return_var);
if ($return_var === 0) {
foreach ($output as $line) {
// 解析每一行以获取用户获取成本信息
// 例如,你可以使用正则表达式匹配用户、CPU和内存使用情况
}
} else {
echo 'Error: ' . $return_var;
}
grep
过滤输出:如果你只想查看与特定用户相关的进程,可以使用grep
命令过滤输出。exec('ps aux | grep ' . escapeshellarg('username'), $output, $return_var);
if ($return_var === 0) {
foreach ($output as $line) {
// 解析每一行以获取用户获取成本信息
}
} else {
echo 'Error: ' . $return_var;
}
请注意,使用exec()
函数可能会带来安全风险,因为它允许执行外部命令。确保对用户输入进行适当的验证和转义,以防止潜在的安全漏洞。在处理来自不可信来源的输入时,可以使用库函数(如proc_open()
)来代替exec()
。