*/15 * * * *Campos
| Minuto | */15 | 0, 15, 30, 45 |
|---|---|---|
| Hora | * | cualquiera |
| Día del mes | * | cualquiera |
| Mes | * | cualquiera |
| Día de la semana | * | cualquiera |
Dónde usarla
| crontab | */15 * * * * /path/to/script.sh |
|---|---|
| GitHub Actions | - cron: "*/15 * * * *" (on.schedule) |
| Kubernetes CronJob | schedule: "*/15 * * * *" |
crontab usa la zona horaria del servidor; GitHub Actions siempre usa UTC.
A tener en cuenta
*/15 se ejecuta en los minutos 0, 15, 30 y 45 de cada hora, igual que 0,15,30,45. Como 15 divide a 60 de forma exacta, el espaciado es exacto; un intervalo que no lo divide, como */25, se ejecuta en los minutos 0, 25 y 50, y luego otra vez en el 0, lo que deja un hueco de 10 minutos al principio de la hora. Cada 30 minutos es */30, y cada 20 minutos es */20.
Las tareas cada cuarto de hora suelen sincronizar datos o enviar informes, y una API lenta puede hacer que una ejecución supere los 15 minutos; flock -n impide que arranque una segunda copia. Las programaciones con intervalos de menos de una hora apenas se ven afectadas por los cambios de horario de verano, a diferencia de las tareas a horas fijas del día. Redirige la salida a un archivo de log, y recuerda que cron te da un PATH mínimo sin el perfil de tu shell.