2010-04-01 31 views
5

¿cómo puedo cambiar la zona horaria en MSYS + MinGW para Windows si solo tengo instalado el comando "date"? No hay "tzconfig" o "tzselect" aquí.Cambiar la zona horaria en MSYS

Cuando intento $ fecha --set = "Abr 01 23:08 GMT + 04: 00" recibo 19:08 GMT + 0 resultado.

Esto es muy importante para mí porque el comando "hacer" siempre me da errores sobre los archivos modificados en el futuro.

+1

Pertenece a superuser.com –

+0

MSYS utiliza la fecha/hora de Windows. Si necesita cambiar estos, hágalo a través del Panel de control de Windows. –

+2

¡NO, MSYS no ve la configuración de Windows! – d9k

Respuesta

12

Tuve el mismo problema. Mi zona horaria es CET (GMT + 1).

he fijado esto estableciendo la variable de entorno TZ, así:

export TZ=CET-1CEST 

Antes de ajustar la variable que tenía:

(DOS)

c:\>time 
Huidige tijd: 17:08:32,40 

(MSYS Shell)

$ date 
Mon Oct 25 15:08:54 GMT 2010 

Después de establecer TZ = CET-1CEST se convierte en:

(DOS)

c:\>time 
Huidige tijd: 17:14:30,80 

(MSYS Shell)

$ export TZ=CET-1CEST 
$ date 
Mon Oct 25 17:15:05 CEST 2010 

Los campos en esta variable son

  • CET: el nombre de su zona horaria
  • +/- x: el desplazamiento en horas para ir de su zona horaria a GMT (en mi ejemplo GMT se retrasa una hora el CET)
  • CET: el nombre de su zona horaria con el horario de verano activado
  • (opcionalmente) +/- y: el desplazamiento en horas desde su zona horaria en horario de verano (DST) a GMT. El valor predeterminado es en hora, por lo que puede omitirlo.

Tenga en cuenta que el primer y tercer campo se utilizan para mostrar en la cadena de fecha. También puede configurarlo en FOO y BAR si lo desea, es el segundo campo (y opcionalmente el cuarto) que modifica el tiempo real.

El parámetro puede tomar incluso más campos para definir cuándo se inicia y finaliza el horario de verano. Si desea leer más al respecto, vea this page.

0

Esta es la copia & pegada desde mi PC. Inicie un símbolo cmd.exe de Windows - y luego:

d:\Users\NeilB>time 
The current time is: 20:59:27.68 
Enter the new time: 21:59 

luego siga con la cáscara del golpe MSYS: ha cambiado

[[email protected] NeilB]$ date 
Thu Apr 1 21:59:31 GMTDT 2010 

Aviso el tiempo. Esto también funciona usando el Panel de control.

+0

OK, cambia el tiempo, pero aún está en otra zona horaria. Entonces cuando lo cambio a 0:26 en cmd obtengo 20:26 en MSYS. Cuando cambio el tiempo a 0:26 en MSYS, obtengo 4:26 en Windows. Así que necesito un método para cambiar la zona horaria de la consola MSYS. – d9k

+0

@ d9K ¿Desea que un mensaje MSYS bash y Windows estén en diferentes zonas horarias? No creo que eso sea posible. MSYS no es un sistema operativo y no tiene ningún concepto de su propia hora, fecha u hora. –

+0

@anon: la fecha y la hora son del sistema, pero MSYS puede decidir la zona horaria e incluso puede tener varias ventanas MSYS en diferentes zonas horarias. –

0

Me encontré con el mismo problema de zona horaria. Mi mejor oportunidad fue usar: date --date = "4 hours ago", donde -4h es mi zona horaria ... Me sirvió para marcar mis cosas, pero no estoy seguro de que sea de ayuda. "hacer" ...

0

Para el registro, además de la gran respuesta de Geert, Esto es lo que he añadido a mi ~/.bash_profile, que viven en Francia:

export TZ=CET-1CEST-2 

y funciona muy bien.

Cuestiones relacionadas