linux - script - ejecutar crontab manualmente
Cómo ejecutar el trabajo crontab cada semana el domingo (6)
Estoy tratando de averiguar cómo ejecutar un trabajo de crontab todas las semanas el domingo. Creo que lo siguiente debería funcionar, pero no estoy seguro de si lo entiendo correctamente. ¿Es correcto lo siguiente?
5 8 * * 6
10 * * * Sol
Position 1 for minutes, allowed values are 1-60
position 2 for hours, allowed values are 1-24
position 3 for day of month ,allowed values are 1-31
position 4 for month ,allowed values are 1-12
position 5 for day of week ,allowed values are 1-7 or and the day starts at Monday.
A continuación se muestra el formato del archivo crontab.
{minute} {hour} {day-of-month} {month} {day-of-week} {user} {path-to-shell-script}
Entonces, para ejecutar cada domingo a la medianoche (el domingo es generalmente 0, 7 en algunos casos raros):
0 0 * * 0 root /path_to_command
Al especificar sus valores cron, necesitará asegurarse de que sus valores se encuentren dentro de los rangos. Por ejemplo, algunos cajones usan un rango de 0-7 para el día de la semana donde 0 y 7 representan el domingo. Nosotros no.
Minutes: 0-59
Hours: 0-23
Day of Month: 1-31
Months: 0-11
Day of Week: 0-6
Aquí hay una explicación del formato crontab.
# 1. Entry: Minute when the process will be started [0-60]
# 2. Entry: Hour when the process will be started [0-23]
# 3. Entry: Day of the month when the process will be started [1-28/29/30/31]
# 4. Entry: Month of the year when the process will be started [1-12]
# 5. Entry: Weekday when the process will be started [0-6] [0 is Sunday]
#
# all x min = */x
Así que de acuerdo con esto, su 5 8 * * 0
se ejecutará a las 8:05 cada domingo.
Para tener un cron ejecutado el domingo puedes usar cualquiera de estos:
5 8 * * 0
5 8 * * 7
5 8 * * Sun
Donde 5 8
representa la hora del día en que esto ocurrirá: 8:05.
En general, si desea ejecutar algo el domingo, solo asegúrese de que la quinta columna contenga 0
, 7
o Sun
Tenías 6
, así que estaba funcionando el sábado.
El formato para cronjobs es:
+---------------- minute (0 - 59)
| +------------- hour (0 - 23)
| | +---------- day of month (1 - 31)
| | | +------- month (1 - 12)
| | | | +---- day of week (0 - 6) (Sunday=0 or 7)
| | | | |
* * * * * command to be executed
Siempre puede usar https://crontab.guru/ como editor para verificar sus expresiones cron.
¡@weekly funciona mejor para mí! example,add the fellowing crontab -e ,it will work in every sunday 0:00 AM @weekly /root/fd/databasebackup/week.sh >> ~/test.txt