GNU/Linux >> Tutoriales Linux >  >> Linux

CronJob cada 25 minutos

El comando en crontab se ejecuta con /bin/sh por lo que puede usar la expansión aritmética para calcular si el minuto actual módulo 25 es igual a cero:

*/5 * * * * [ $(( $(date +\%s) / 60 \% 25 )) -eq 0 ] && your_command

cron ejecutará esta entrada completa cada 5 minutos, pero solo si el minuto actual (en minutos desde la época) módulo 25 es igual a cero, ejecutará your_command .

Como han señalado otros, 1 día no es divisible por 25 minutos, por lo que esto no causará your_command ejecutarse a la misma hora todos los días, pero lo hará correr cada 25 minutos.


Tu mejor apuesta es correr a los 20 o 30 minutos.

Lo mejor que puede hacer es activar cada 5 minutos, y luego mantener un conteo interno o una marca de tiempo, y ejecutar cada 5 activaciones, o si han transcurrido 25 minutos desde la última ejecución.

Más complicado sería calcular las horas correctas de un día, a partir de la medianoche, y aceptar el error al final del día. Esto implicaría duplicar la entrada crontab a las diferentes horas.

Más complicado que eso sería calcular los tiempos de un mes completo, lo que implicaría muchas copias de la entrada crontab para cubrir las diferentes combinaciones.

Finalmente, podría implementar su propio daemon siempre activo y hacer que haga la programación.


No tengo experiencia directa con él, pero fcron parece hacer lo que quieras de forma inmediata. Según su documentación puedes especificar frecuencias:

# Get our mails every 30 minutes 
@ 30 getmails -all 

# make some security tests every 48 hours of system up time, 
# force a mail to be sent to root even if there is no output 
@mailto(root),forcemail 2d /etc/security/msec/cron-sh/security.sh

Linux
  1. Cómo ejecutar o repetir un comando de Linux cada X segundos para siempre

  2. Linux:¿ejecutar script cada 30 minutos con Systemd?

  3. Cómo ejecutar Cron cada 5 minutos, segundos, horas, días, meses

  4. Cómo ejecutar el trabajo crontab cada semana el domingo

  5. ¿Cómo ejecutar repetidamente el script bash cada N segundos?

Cómo ejecutar trabajos cron cada 5, 10 o 15 minutos

Cómo ejecutar un comando de Linux cada X segundos para siempre

Cómo ejecutar un trabajo Crontab cada semana el domingo

¿Entrada crontab sospechosa que ejecuta 'xribfa4' cada 15 minutos?

Ejemplo de crontab:cada 5 minutos

¿Cómo puedo hacer que un trabajo cron se ejecute cada 30 minutos?