.\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk) .\" .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" .\" References consulted: .\" Linux libc source code .\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991) .\" 386BSD man pages .\" Modified Sun Jul 25 11:01:58 1993 by Rik Faith (faith@cs.unc.edu) .\" Modified 2001-11-13, aeb .\" .\" Traducción por Urko Lusa 19980323 .\" Traducción revisada por Miguel Pérez Ibars el 25-febrero-2005 .\" .TH TZSET 3 "13 noviembre 2001" "" "Manual del programador de Linux" .SH NOMBRE tzset, tzname, timezone, daylight \- inicializa la información de conversión horaria .SH SINOPSIS .nf .B #include .sp .B void tzset (void); .sp .BI "extern char *" tzname [2]; .BI "extern long " timezone ; .BI "extern int " daylight ; .fi .SH DESCRIPCIÓN La función \fBtzset()\fP inicializa la variable \fItzname\fP 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 \fItimezone\fP (segundos al Oeste de GMT) y \fIdaylight\fP (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). .PP Si la variable TZ no está presente en el entorno, la variable \fItzname\fP se inicializa con la mejor aproximación de la hora local, tal como se especifica en el fichero \fI/usr/lib/zoneinfo/localtime\fP, cuyo formato se detalla en el fichero de formato .BR tzfile (5) \fIlocaltime\fP localizado en el directorio de huso horario del sistema (vea más abajo). (También es frecuente que el fichero .I /etc/localtime usado aquí, sea un enlace simbólico al fichero correcto en el directorio de huso horario del sistema.) .PP 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). .PP La variable TZ puede tener tres formatos. El primero se usa cuando no hay horario de ahorro energético en la zona horaria local: .sp .RS .I nzh desfase .RE .sp La cadena \fInzh\fP especifica el nombre de la zona horaria y debe componerse de tres o más caracteres alfabéticos. La cadena \fIdesfase\fP sigue inmediatamente después de \fInzh\fP y especifica el tiempo a añadir a la hora local para obtener el Tiempo Coordinado Universal (UTC). El valor de \fIdesfase\fP es positivo si la hora local está al oeste del meridiano de Greenwich y negativo si está al este. La hora debe estar entre 0 y 24, y los minutos y segundos entre 0 y 59. .PP El segundo formato se usa cuando hay horario de ahorro energético: .sp .RS .I nzh desfase hae [desfase],inicio[/hora],fin[/hora] .RE .sp No hay espacios en la especificación. El \fInzh\fP y el \fIdesfase\fP iniciales especifican la zona horaria estándar tal como se describe arriba. Las cadenas \fIhae\fP y \fIdesfase\fP especifican el nombre y desfase para el correspondiente horario de ahorro energético de la zona. Si se omite el desfase, se asume el valor de una hora por delante de la hora estándar. .PP El campo \fIinicio\fP especifica cuándo entra en vigor el horario de ahorro energético y el campo \fIfin\fP cuándo se vuelve al horario estándar. Estos campos pueden tener los siguientes formatos: .TP J\fIn\fP Especifica el día juliano, siendo \fIn\fP entre 1 y 365. El 29 de febrero nunca se cuenta, ni siquiera en los años bisiestos. .TP .I n Especifica el día juliano, siendo \fIn\fP entre 1 y 365. El 29 de febrero se cuenta en los años bisiestos. .TP M\fIm\fP.\fIs\fP.\fId\fP Especifica el día \fId\fP (0 <= \fId\fP <= 6) de la semana \fIs\fP (1 <= \fIs\fP <= 5) del mes \fIm\fP (1 <= \fIm\fP <= 12). La semana 1 es la primera semana en la que ocurre el día \fId\fP y la semana 5 es la última en el que ocurre el día \fId\fP. El día 0 es un domingo. .PP Los campos \fIhora\fP especifican cuándo (en el horario local actualmente en vigor) ocurre el cambio al otro horario. Si se omite, el valor por defecto es 02:00:00. .PP El tercer formato especifica que la información de la zona horaria debe leerse de un fichero: .sp .RS :[fichero] .RE .sp Si se omite la especificación de \fIfichero\fP, la información de la zona horaria se lee del fichero .I localtime en el directorio de huso horario del sistema, que actualmente suele ser .IR /usr/share/zoneinfo . Este fichero se encuentra en formato .BR tzfile (5). Si se proporciona \fIfichero\fP, especifica otro fichero de formato .BR tzfile (5) del que leer la información de la zona horaria. Si \fIfichero\fP no comienza con `/', la especificación de fichero es relativa al directorio de huso horario del sistema. .SH FICHEROS El directorio de huso horario del sistema utilizado depende de la versión de (g)libc. Libc4 y libc5 usan .I /usr/lib/zoneinfo y, desde libc-5.4.6, .IR /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 .IR /usr/share/zoneinfo . .LP Este directorio de huso horario contiene los ficheros .nf localtime fichero de huso horario local posixrules reglas para TZ's al estilo POSIX .fi .LP A menudo .I /etc/localtime es un enlace simbólico al fichero .I localtime o al fichero de huso horario correcto en el directorio de huso horario del sistema. .SH "CONFORME A" SVID 3, POSIX, BSD 4.3 .SH OBSERVACIONES Observe que la variable \fIdaylight\fP 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 \fItz_dsttime\fP en .BR gettimeofday (2)). Ha estado obsoleta muchos años pero es requerida por SUSv2. .LP BSD4.3 tenía una rutina \fIchar *timezone(zone,dst)\fP 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. .SH "VÉASE TAMBIÉN" .BR date (1), .BR gettimeofday (2), .BR time (2), .BR ctime (3), .BR getenv (3), .BR tzfile (5)