¿Cómo entender el formato de hora Unix?

¿Cómo entender el formato de hora Unix?

¿Cómo funciona el formato de hora de Unix? Por ejemplo, la hora Unix para las 3:00 p.m. es:

Normal time format <----3:00PM = 1402565420----> Unix Time

¿Cómo puedo hacer que entienda el tiempo como3:00 PM?

Respuesta1

El tiempo de Unix se da comosegundos desde la época: la cantidad de segundos (sin contar los segundos intercalares) que han pasado desde las 00:00:00 Hora Universal Coordinada (UTC), o el jueves 1 de enero de 1970,

El comando GNU datetiene algunas características muy interesantes que le permiten traducir entre diferentes formatos de hora. Estos se explican muy bien, por man datelo que aquí solo les daré algunos ejemplos:

### "Normal" format
$ date
Thu Jun 12 11:44:23 CEST 2014
### Unix time
$ date +%s
1402566271

Para convertir, puedes dar dateuna fecha específica usando la -dbandera. Sin embargo, para obtener una fecha de Unix, debe ser una fecha completa. No puede convertir las 3:00 p.m. a hora Unix ya que la hora Unix se refiere a una fecha completa (año, mes, día, hora). Entonces, por ejemplo, para obtener la fecha Unix del 12 de septiembre de 1987, harías:

$ date -d "3 PM 12 September 1987" +%s
558450000

Y para volver a convertir eso a una fecha "normal":

$ date -d "@558450000" 
Sat Sep 12 15:00:00 CEST 1987

información relacionada