It seems that Cron doesn't support a seconds interval. What is the easiest way to run a cli script (php) every 15 seconds? Is there a cron tool that works specifically with seconds (then I could use Cron to call it every minute)?
It seems that Cron doesn't support a seconds interval. What is the easiest way to run a cli script (php) every 15 seconds? Is there a cron tool that works specifically with seconds (then I could use Cron to call it every minute)?
Cron mandates the seconds to be there, as far as I knew.
"0/15 * * * * *"
sec min hour day-month month day-week (optional year which I left out)
EDIT: It appears that while the CRON expression requires 6 or 7, the cron exec that runs it wants 5... I'll look into this!
I think you have to write a shell script which calls your command and then sleeps 15 seconds -- I don't believe most cron implementations allow for more than one minute granularity.
You need to write a shell script like this that sleeps on the specified interval and schedule that to run every minute in cron:
Then schedule that to run in cron with your parameters: delay_cmd 15 mycommand parameters
This is really a programming question and as such was asked on the correct site.
As cron itself cannot do what you require it's a matter of creating your own routine. The use of sleep, as suggested by others, will not give the correct results, as it does not take into account the time required to run the command. However, it's a simple matter of reading the system clock, in whatever language suits you, and firing off the command every 15 seconds based on the time, rather than a time delay.
Once you have your routine don't fire it off via cron every minute. Just run it as a background task continuously.
0/15 * * * * ?
Cron format 0/15 * * * * ? Start time Wednesday, November 9, 2016 8:36 AM Next scheduled dates (Runs every 15 secs)