table of contents
TZSET(3) | Manual del programador de Linux | TZSET(3) |
NOMBRE¶
tzset, tzname, timezone, daylight - inicializa la información de conversión horariaSINOPSIS¶
#include <time.h>void tzset (void);extern char *tzname[2]; extern long timezone; extern int daylight;
DESCRIPCIÓN¶
La función tzset() inicializa la variable tzname a partir de la variable de entorno TZ. Esta función es invocada automáticamente por otras funciones conversoras de tiempo que dependen de la zona horaria. En un entorno de tipo SysV se establecerá también el valor de las variables timezone (segundos al Oeste de GMT) y daylight (0 si la zona horaria no tiene reglas de tiempo sobre ahorro energético, distinto de cero si hay algún período durante el que se apliquen horarios de ahorro energético). Si la variable TZ no está presente en el entorno, la variable tzname se inicializa con la mejor aproximación de la hora local, tal como se especifica en el fichero /usr/lib/zoneinfo/localtime, cuyo formato se detalla en el fichero de formato tzfile(5) localtime localizado en el directorio de huso horario del sistema (vea más abajo). (También es frecuente que el fichero /etc/localtime usado aquí, sea un enlace simbólico al fichero correcto en el directorio de huso horario del sistema.) Si la variable TZ está presente en el entorno, pero su valor es NULL o no puede ser interpretado usando ninguno de los formatos especificados abajo, se usa el Tiempo Coordinado Universal (UTC). La variable TZ puede tener tres formatos. El primero se usa cuando no hay horario de ahorro energético en la zona horaria local:nzh desfase
nzh desfase hae
[desfase],inicio[/hora],fin[/hora]
- Jn
- Especifica el día juliano, siendo n entre 1 y 365. El 29 de febrero nunca se cuenta, ni siquiera en los años bisiestos.
- n
- Especifica el día juliano, siendo n entre 1 y 365. El 29 de febrero se cuenta en los años bisiestos.
- Mm.s.d
- Especifica el día d (0 <= d <= 6) de la semana s (1 <= s <= 5) del mes m (1 <= m <= 12). La semana 1 es la primera semana en la que ocurre el día d y la semana 5 es la última en el que ocurre el día d. El día 0 es un domingo.
:[fichero]
FICHEROS¶
El directorio de huso horario del sistema utilizado depende de la versión de (g)libc. Libc4 y libc5 usan /usr/lib/zoneinfo y, desde libc-5.4.6, /usr/share/zoneinfo. Glibc2 usará la variable de entorno TZDIR cuando ésta exista. Su valor por defecto depende de cómo fue instalado, pero normalmente es /usr/share/zoneinfo. Este directorio de huso horario contiene los ficheroslocaltime fichero de huso horario local posixrules reglas para TZ's al estilo POSIXA menudo /etc/localtime es un enlace simbólico al fichero localtime o al fichero de huso horario correcto en el directorio de huso horario del sistema.
CONFORME A¶
SVID 3, POSIX, BSD 4.3OBSERVACIONES¶
Observe que la variable daylight no indica que se apliquen horarios de ahorro energético en el momento. Suele dar el número de algún algoritmo (vea la variable tz_dsttime en gettimeofday(2)). Ha estado obsoleta muchos años pero es requerida por SUSv2. BSD4.3 tenía una rutina char *timezone(zone,dst) que devolvía el nombre de la zona horaria correspondiente a su primer argumento (minutos al Oeste de GMT). Si el segundo argumento era 0, se usaba el nombre estándar y, en caso contrario, la versión de tiempo de ahorro energético.VÉASE TAMBIÉN¶
date(1), gettimeofday(2), time(2), ctime(3), getenv(3), tzfile(5)13 noviembre 2001 |