У нас есть очень чувствительное приложение, в котором активно используется crontab, и мы хотели бы отслеживать, сколько процессов, запущенных crontab, все еще выполняется.
Короче говоря, у нас есть ограничение в 300 заданий cron в 'queuedefs', и мы хотим быть уверены, что не достигаем его.
С уважением, тупой админ
Похоже на PID crond
меняется при каждом вызове. Итак, как насчет этого?
for pid in $(ps -ef | grep -i crond | awk '{print $2}') ; do
ps -ef | grep -vi crond | awk -v ppid=${pid} '{if ($3 == ppid) print $0}'
done | wc -l
Это распечатает количество всех процессов, которые были запущены процессом с именем crond
.
Это даст вам список процессов, родителем которых является crond:
ps h --ppid $(pgrep crond)