Cron
There's no clean way to express this — 45 doesn't divide evenly into 60, so every option below has a catch.
The obvious-looking 0,45 * * * * does not run every 45 minutes. It runs at :00 and :45 past every hour — a 45-minute gap, then a 15-minute gap, repeating. That's because cron's minute field resets every hour; it has no memory of when the last job ran.
If you need a true, unbroken 45-minute interval regardless of the clock, cron alone can't do it — you'd need a long-running process or a scheduler with interval-based (not clock-based) semantics, such as a systemd timer with OnUnitActiveSec=45min, or a simple loop with a sleep. If a slightly uneven 45/15-minute alternating gap is actually fine for your use case, 0,45 * * * * above works as-is.
Want to build a different schedule, or check how a related expression behaves? Open this exact expression in the full Cron Expression Builder to edit it directly.
Related
Edit this expression directly, or build one from scratch.
Browse every common schedule pattern on this site.
Test how any expression actually behaves before deploying it.