¿Cómo convertir una cadena de fecha a la zona horaria actual en la línea de comando?


11

¿Cómo puedo convertir una cadena de fecha / hora, por ejemplo 2011-11-13 08:11:02 +0000, a mi zona horaria local en la línea de comando?


No dude en agregar diferentes respuestas, pero recuerde que OS X tiene BSD date, no GNU date. Las opciones son bastante diferentes.
Daniel Beck

Respuestas:


17

Uso date -jf "<input format>" "<input value>" +"<output format>".

Lo siguiente convierte una fecha UTC a mi zona horaria local (CET):

$ date -jf "%Y-%m-%d %H:%M:%S %z" "2011-11-13 08:11:02 +0000" +"%Y_%m_%d__%H_%M_%S"
2011_11_13__09_11_02

Si especifica el mismo formato de fecha para la entrada y la salida, solo convertirá la hora a su zona horaria local. Pero, como en el ejemplo, puede combinar eso con una conversión de formato.


2
La zona horaria objetivo se puede cambiar configurando temporalmente $TZ: TZ=EST date -jf %H%z 23+0100 +%I%p05PM
Lri
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.