Movatterモバイル変換


[0]ホーム

URL:


man7.org > Linux >man-pages

Linux/UNIX system programming training


tzset(3) — Linux manual page

NAME |LIBRARY |SYNOPSIS |DESCRIPTION |ENVIRONMENT |FILES |ATTRIBUTES |STANDARDS |HISTORY |CAVEATS |BUGS |SEE ALSO |COLOPHON

tzset(3)                 Library Functions Manualtzset(3)

NAME        top

       tzset, tzname, timezone, daylight - initialize time conversion       information

LIBRARY        top

       Standard C library (libc,-lc)

SYNOPSIS        top

#include <time.h>void tzset(void);extern char *tzname[2];extern longtimezone;extern intdaylight;   Feature Test Macro Requirements for glibc (seefeature_test_macros(7)):tzset():           _POSIX_C_SOURCEtzname:           _POSIX_C_SOURCEtimezone,daylight:           _XOPEN_SOURCE               || /* glibc >= 2.19: */ _DEFAULT_SOURCE               || /* glibc <= 2.19: */ _SVID_SOURCE

DESCRIPTION        top

       Thetzset() function initializes thetzname variable from theTZ       environment variable.  This function is automatically called by       the other time conversion functions that depend on the timezone.       In a System-V-like environment, it will also set the variablestimezone (seconds West of UTC) anddaylight (to 0 if this timezone       does not have any daylight saving time rules, or to nonzero if       there is a time, past, present, or future when daylight saving       time applies).       Thetzset() function initializes these variables to unspecified       values if this timezone is a geographical timezone like       "America/New_York" (see below).       If theTZvariable does not appear in the environment, the system       timezone is used.  The system timezone is configured by copying,       or linking, a file in thetzfile(5) format to/etc/localtime.  A       timezone database of these files may be located in the system       timezone directory (see theFILESsection below).       If theTZvariable does appear in the environment, but its value       is empty, or its value cannot be interpreted using any of the       formats specified below, then Coordinated Universal Time (UTC) is       used.       A nonempty value ofTZcan be one of two formats, either of which       can be preceded by a colon which is ignored.  The first format is       a string of characters that directly represent the timezone to be       used:std offset[dst[offset][,start[/time],end[/time]]]       There are no spaces in the specification.  Thestd string       specifies an abbreviation for the timezone and must be three or       more alphabetic characters.  When enclosed between the less-than       (<) and greater-than (>) signs, the character set is expanded to       include the plus (+) sign, the minus (-) sign, and digits.  Theoffset string immediately followsstd and specifies the time value       to be added to the local time to get Coordinated Universal Time       (UTC).  Theoffset is positive if the local timezone is west of       the Prime Meridian and negative if it is east.  The hour must be       between 0 and 24, and the minutes and seconds 00 and 59:           [+|-]hh[:mm[:ss]]       Thedst string andoffset specify the name and offset for the       corresponding daylight saving timezone.  If the offset is omitted,       it defaults to one hour ahead of standard time.       Thestart field specifies when daylight saving time goes into       effect and theend field specifies when the change is made back to       standard time.  These fields may have the following formats:       Jn     This specifies the Julian day withn between 1 and 365.              Leap days are not counted.  In this format, February 29              can't be represented; February 28 is day 59, and March 1 is              always day 60.n      This specifies the zero-based Julian day withn between 0              and 365.  February 29 is counted in leap years.       Mm.w.d This specifies dayd (0 <=d <= 6) of weekw (1 <=w <= 5)              of monthm (1 <=m <= 12).  Week 1 is the first week in              which dayd occurs and week 5 is the last week in which dayd occurs.  Day 0 is a Sunday.       Thetime fields specify when, in the local time currently in       effect, the change to the other time occurs.  They use the same       format asoffset except that the hour can be in the range [-167,167] to represent times before and after the named day.  If       omitted, the default is 02:00:00.       Here is an example for New Zealand, where the standard time (NZST)       is 12 hours ahead of UTC, and daylight saving time (NZDT), 13       hours ahead of UTC, runs from September's last Sunday, at the       default time 02:00:00, to April's first Sunday at 03:00:00.           TZ="NZST-12:00:00NZDT-13:00:00,M9.5.0,M4.1.0/3"       The second —or "geographical"— format specifies that the timezone       information should be read from a file:           filespec       Thefilespec specifies atzfile(5)-format file to read the       timezone information from.  Iffilespec does not begin with a '/',       the file specification is relative to the system timezone       directory.  If the specified file cannot be read or interpreted,       Coordinated Universal Time (UTC) is used; however, applications       should not depend on randomfilespec values standing for UTC, asTZformats may be extended in the future.       Here's an example, once more for New Zealand:           TZ="Pacific/Auckland"

ENVIRONMENT        top

TZIf this variable is set its value takes precedence over the              system configured timezone.TZDIRIf this variable is set its value takes precedence over the              system configured timezone database directory path.

FILES        top

/etc/localtime              The system timezone file./usr/share/zoneinfo/              The system timezone database directory./usr/share/zoneinfo/posixrules              When a TZ string includes a dst timezone without anything              following it, then this file is used for the start/end              rules.  It is in thetzfile(5) format.  By default, the              zoneinfo Makefile hard links it to theAmerica/New_York              tzfile.       Above are the current standard file locations, but they are       configurable when glibc is compiled.

ATTRIBUTES        top

       For an explanation of the terms used in this section, seeattributes(7).       ┌───────────────────────────┬───────────────┬────────────────────┐       │InterfaceAttributeValue│       ├───────────────────────────┼───────────────┼────────────────────┤       │tzset()                   │ Thread safety │ MT-Safe env locale │       └───────────────────────────┴───────────────┴────────────────────┘

STANDARDS        top

       POSIX.1-2024.

HISTORY        top

tzset()tzname POSIX.1-1988, SVr4, 4.3BSD.timezonedaylight              POSIX.1-2001 (XSI), SVr4, 4.3BSD.       4.3BSD had a functionchar *timezone(zone,dst)that returned the       name of the timezone corresponding to its first argument (minutes       West of UTC).  If the second argument was 0, the standard name was       used, otherwise the daylight saving time version.

CAVEATS        top

       Because the values oftzname,timezone, anddaylight are often       unspecified, and accessing them can lead to undefined behavior in       multithreaded applications, code should instead obtain time zone       offset and abbreviations from thetm_gmtoff andtm_zone members of       the broken-down time structuretm(3type).

BUGS        top

       Since this function does not report errors, there's no way to know       if the value of TZ represents a valid time zone.

SEE ALSO        top

date(1),gettimeofday(2),time(2),ctime(3),getenv(3),tzfile(5)

COLOPHON        top

       This page is part of theman-pages (Linux kernel and C library       user-space interface documentation) project.  Information about       the project can be found at        ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report       for this manual page, see       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.       This page was obtained from the tarball man-pages-6.15.tar.gz       fetched from       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on       2025-08-11.  If you discover any rendering problems in this HTML       version of the page, or you believe there is a better or more up-       to-date source for the page, or you have corrections or       improvements to the information in this COLOPHON (which isnot       part of the original manual page), send a mail to       man-pages@man7.orgLinux man-pages 6.15            2025-05-17tzset(3)

Pages that refer to this page:homectl(1)pmlogrewrite(1)gettimeofday(2)ctime(3)timegm(3)tm(3type)localtime(5)tzfile(5)environ(7)anacron(8)hwclock(8)



HTML rendering created 2025-09-06 byMichael Kerrisk, author ofThe Linux Programming Interface.

For details of in-depthLinux/UNIX system programming training courses that I teach, lookhere.

Hosting byjambit GmbH.

Cover of TLPI


[8]ページ先頭

©2009-2025 Movatter.jp