El día de la semana {0-7} en crontab tiene 8 opciones, pero solo tenemos 7 días en una semana


113

Día de la semana: rango permitido 0 - 7. El domingo es 0 o 7.

Encontré esto después de buscar en Google, mi pregunta es ¿por qué ambos valores (0,7) deben corresponder al domingo?


15
Creo que una lógica pensar algún país se inicia la semana el lunes y otra el domingo, así que pone el Domingo primera y última resolver este malentendido supongo
Kiwy

10
Porque el domingo es un día tan maravilloso, ¿no estás de acuerdo? : P
Alko

3
Porque los estadounidenses piensan que el domingo es el primer día de la semana, pero los europeos dicen que el domingo es el último día de la semana.
Pieter B

99
No te olvides de Funday.
MDMoore313

66
Porque para el séptimo día, Dios completó su obra que había hecho, y descansó el séptimo día de toda su obra que había hecho.
user84207

Respuestas:


127

Esto es una cuestión de portabilidad. En los primeros Unices, algunas versiones de cron aceptaban 0 como domingo, y algunas aceptaban 7 como domingo; este formato es un intento de ser portátil con ambos. De man 5 crontaben vixie-cron (énfasis propio):

Al especificar el día de la semana, tanto el día 0 como el día 7 se considerarán domingo. BSD y AT&T parecen estar en desacuerdo sobre esto.


41
Hay 10 tipos de personas, las que comienzan a contar con 0 y las que comienzan con 1.
Hagen von Eitzen

34
@HagenvonEitzen Recuerdo el chiste de manera diferente: hay 10 tipos de personas, las que entienden binario y las que no. - También: hay 2 tipos de personas: (1.) los que comienzan a contar con 1, (1.) los que comienzan con 0.
leemes

77
Tengo otra versión: hay tres tipos de personas en el mundo: las que pueden contar y las que no pueden.
flurbius

25
O: hay dos tipos de personas. Los que pueden extrapolar a partir de datos incompletos.
Bernhard

20
O: Hay 10 tipos de personas en el mundo: los que entienden el código Gray, los que no lo hacen y los que esperaban una broma sobre binario.
OnoSendai

28

Además de la excelente respuesta de @ ChrisDown, esta también podría ser una solución ingeniosa para un problema de localización : "Según los calendarios hebreos y los calendarios cristianos tradicionales, el domingo es el primer día de la semana". Tenerlo en ambos sentidos, lo cual es realmente fácil mediante programación, hace que sea fácil de usar para cualquier grupo.


Felicitaciones, por su apoyo @ l0b0
Ruban Savvy

55
+1, buena respuesta. Supongo que esta es la razón por la cual AT&T y BSD no estuvieron de acuerdo :-)
Chris Down

:) espero que sí, je, je;)
Ruban Savvy

1

Más simplemente, el campo es de 3 bits binarios que le dan 000 a 111 o 0 a 7. Por lo tanto, hay un total de ocho valores en un campo de 3 bits. El valor adicional se iguala al primero, por lo que, por conveniencia, puede comenzar en 0 (domingo) o 1 (lunes), aumentar 6 veces y cubrir una semana completa.


-6

Del manual:

día de la semana (0 - 7) (0 a 6 son de domingo a sábado, o usan nombres; 7 es domingo, lo mismo que 0)


16
¿Cómo agrega esto nueva información que el OP no parece saber?
Joseph R.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.