在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()
。