Ранее работал вот такой способ
function is_running_process2($process)
{
exec('ps -C php -o pid=,command=', $output);
foreach ($output as $row) {
preg_match('/-f (.*)/', $row, $result);
if (!empty($result[1]) && $result[1] == $process) {
return true;
}
}
return false;
}
if (!is_running_process2($_SERVER['DOCUMENT_ROOT'] . '/get_potok.php')) {
// запускаем
}
сейчас он не работает, т.е. запуск происходит постоянно
но если выполнить команду
ps -ef | grep "get_potok.php"
то результат будет вот такой
root 1006875 1006867 0 13:27 ? 00:00:00 sh -c /usr/bin/php7.4 -f /var/www/site.ru/get_potok.php
root 1006876 1006875 0 13:27 ? 00:00:00 /usr/bin/php7.4 -f /var/www/site.ru/get_potok.php
и их набирается под 100
Подскажите как мне поправить код и удалить все лишние (конечно можно удалить вручную каждый отдельно), но почему перестал работать ps -C php