zulu zonas significa que mexico horario horarias hora como colombia calcular bash date

zonas - Bash consigue el tiempo UTC en segundo



utc time (3)

Apuesto a que esto es lo que se pretendía como resultado.

$ date -u --date=@1404372514 Thu Jul 3 07:28:34 UTC 2014

Parece que no puedo conseguir la fecha bash UTC en segundo lugar. Estoy en Sydney, así que + 10 horas, hora UTC

date Thu Jul 3 17:28:19 WST 2014 date -u Thu Jul 3 07:28:20 UTC 2014

Pero cuando traté de convertirlo, obtengo el mismo resultado, que no es la hora UTC

date +%s 1404372514 date -u +%s 1404372515

¿Que me estoy perdiendo aqui?

Después de obtener una respuesta que decía la date +%s estaba regresando la hora UTC, aquí hay más detalles sobre el problema que estoy enfrentando ahora.

Estoy tratando de comparar una fecha escrita en un archivo con Python. Esta fecha se escribe en segundos en hora UTC. Y la date +%s bash date +%s no me da la misma. En realidad, si lo estoy haciendo en python time.asctime(time.localtime(date_in_seconds_from_bash)) , obtengo la hora actual de Sydney, no UTC. No entiendo.


Creo que +% s es segundos desde epoch. Es invariante de la zona horaria.


Usted dice que está usando:

time.asctime(time.localtime(date_in_seconds_from_bash))

donde date_in_seconds_from_bash es presumiblemente el resultado de la date +%s .

La función time.localtime , como su nombre lo indica, le da la hora local .

Si quiere UTC, use time.gmtime() vez de time.localtime() .

Como dice la respuesta de JamesNoonan33 , el resultado de la date +%s es la zona horaria invariable, por lo que la date +%s es exactamente equivalente a la date -u %s . Imprime el número de segundos desde la "época", que es 1970-01-01 00:00:00 UTC . El resultado que muestra en su pregunta es completamente consistente con eso:

date -u Thu Jul 3 07:28:20 UTC 2014 date +%s 1404372514 # 14 seconds after "date -u" command date -u +%s 1404372515 # 15 seconds after "date -u" command