我正在运行一个php脚本来查看我的机器上运行了多少个python3进程。我使用以下代码:
$count = exec("pgrep -c python3")
这将返回2(例如,如果正在运行2个进程)。现在我需要对这个输出进行数学运算,比如从5中减去这个数。当我这样做并回显输出时,我什么也得不到。我尝试过typecasing到int,但这不会有帮助。
有人可以建议我在这里做错了吗?
答案 0 :(得分:1)
尝试以下功能:
/**
* Count the number of processes runing based on their name
* @param string $processus_name
* @return integer|boolean
*/
function count_processus( $processus_name = '' ){
$processe_name = escapeshellarg( $processus_name );
$exit_status = 0;
$output = '';
$cmd = sprintf( 'pgrep -c %s', $processus_name );
exec( $cmd, $output, $exit_status );
if( $exit_status != 0 ){
// Faild $output will containe the error message
return false;
}
return (int)$output[0];
}