Crontab – 如何确定由cron启动的当前活动进程

我们有一个非常敏感的应用程序,大量使用crontab,并且我们想跟踪crontab启动的进程有多less个仍在运行。

总之,我们在'queuedefs'中有300个cron作业的限制,我们要确保我们没有达到它。

真诚的,愚蠢的pipe理员

这会得到一个父进程为crond的进程列表:

ps h --ppid $(pgrep crond) 

看起来像每个调用crond的PID不同。 那么,这个怎么样?

 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的进程已经启动的所有进程的计数。