【发布时间】:2015-08-14 07:24:07
【问题描述】:
我有一个通过 cron 在服务器上运行作业的 php 脚本。基本上,cron 每分钟运行一次,例如:
- php /path/to/my/script/script.php
此脚本可以多次运行,并持续运行一段时间。
我正在尝试做的是找到一种方法来读取为此用户运行的进程,并计算 script.php 运行的次数。在 cron 实际运行之前。基本上,如果有 10 个脚本实例正在运行,则在运行少于 10 个之前不会启动它的其他实例。如果有 10 个正在运行,我需要确保它不会启动。
希望这是有道理的。 ;)
【问题讨论】:
-
感谢@Jan J 和@maxime.bochon 对于有类似问题的任何人,我所做的是:
totalatm=ps ax | grep 'php /home/xxxx/public_html/cron/xxxx.php' | wc -l` if [ "$totalatm" -le 10 ];然后 php /home/xxxxx/public_html/cron/xxxxx.php else echo "nothing to do"; fi` xxx 只是注释掉我自己的路径和文件名......你可以忽略它