minutos - ejecutar crontab manualmente
Cómo configurar un crontab para ejecutar en un momento específico (3)
Cuando hagas crontab -e, intenta esto:
59 23 * * * /usr/sbin/myscript > /dev/null
Eso significa que: a los 59 minutos y 23 horas todos los días (*) todos los días, todos los días laborables, ejecute myscript.
Ver man crontab para más información y ejemplos.
¿Cómo puedo configurar mi crontab para ejecutar el script X a las 11:59 PM todos los días sin enviarme un correo electrónico o crear ningún registro?
En este momento mi crontab se ve algo como esto
@daily /path/to/script.sh
Con la respuesta anterior recibirás un correo electrónico con cualquier texto escrito en stderr. Algunas personas también lo redirigen y se aseguran de que el script escriba un registro.
... 2>&1 ....
Siguiendo con la respuesta de svrist, dependiendo de tu caparazón, los 2> y 1 deberían ir después de / dev / null o aún verás la salida de stderr.
Lo siguiente silenciará stdout y stderr:
59 23 * * * /usr/sbin/myscript > /dev/null 2>&1
El siguiente silence stdout, pero stderr seguirá apareciendo (a través de stdout):
59 23 * * * /usr/sbin/myscript 2>&1 > /dev/null
El capítulo de la guía avanzada de scripts de Bash sobre la redirección de IO es una buena referencia: busque 2> y 1 para ver un par de ejemplos.