table of contents
other versions
- jessie 1.8-1
- stretch 1.22-1
- testing 2.6-1
- stretch-backports 2.6-1~bpo9+1
- unstable 2.6-1
TZSET(3) | Linux-Programmierhandbuch | TZSET(3) |
BEZEICHNUNG¶
tzset, tzname, timezone, daylight - initialisiert Informationen zur Zeitumstellung (Sommer-/Winterzeit)ÜBERSICHT¶
#include <time.h> void tzset (void); extern char *tzname[2]; extern long timezone; extern int daylight;
Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):
tzset(): _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_SOURCE
BESCHREIBUNG¶
Die Funktion tzset() initialisiert die Variable tzname abhängig von der Umgebungsvariable TZ. Diese Funktion wird automatisch von den anderen Funktionen aufgerufen, die Zeiten in Abhängigkeit von der Zeitzone umrechnen. In einer System-V-artigen Umgebung werden auch die folgenden Variablen gesetzt: timezone (Sekunden westlich von UTC) sowie daylight (0, falls diese Zeitzone keine Sommerzeit hat oder ungleich 0, falls es eine Zeit des Jahres gibt, in der die Sommerzeit gilt). Sollte die Umgebungsvariable TZ nicht gesetzt sein, wird tzname mit bestmöglicher Näherung aus der lokalen Zeit der »Wanduhr« (local wall clock time) initialisiert. Dabei wird auf die Datei localtime im systemweiten Zeitzonenverzeichnis (siehe unten) zurückgegriffen, dessen Format in tzfile(5) beschrieben wird. (Man sieht häufig an dieser Stelle auch /etc/localtime, einen symbolischen Link zur richtigen Datei im Zeitzonenverzeichnis.) Falls die Umgebungsvariable TZ gesetzt ist, jedoch ihr Wert »leer« ist oder das Format (siehe unten) des Wertes nicht interpretiert werden kann, so wird die »Coordinated Universal Time« (UTC) benutzt. Der Wert von TZ kann in einem von drei Formaten vorliegen. Das erste Format wird benutzt, wenn in der lokalen Zeitzone keine Sommerzeit vorgesehen ist:std offset
Die Zeichenkette std definiert den Namen der Zeitzone. Er besteht aus
wenigstens drei Buchstaben. Die Zeichenkette offset folgt unmittelbar
und beschreibt den Wert, der hinzu addiert werden muss, um Coordinated
Universal Time (UTC) zu erhalten. Der offset ist positiv für
Zeitzonen westlich des Nullmeridians (Greenwich) und negativ für
Zeitzonen östlich davon. Die Stunde muss zwischen 0 und 24 liegen, die
Minuten zwischen 0 und 59, die Sekunden ebenfalls.
Das zweite Format wird benutzt, wenn es eine Sommerzeit gibt:
std offset dst
[offset],start[/time],end[/time]
Die Spezifikation sieht keine Leerzeichen zwischen den Elementen vor. Die am
Anfang stehenden std und offset spezifizieren wie oben
beschrieben die Zeitzone. Die Zeichenketten dst und offset
bezeichnen den Namen und den Offset der zugehörigen Sommerzeit. Falls
der Offset weggelassen wird, wird die Sommerzeit als eine Stunde vor der
Standardzeit angenommen.
Das Feld start definiert den Beginn der Sommerzeit und end
bezeichnet das Zurückschalten zur Normalzeit. Diese Felder
können die folgenden Formate haben:
- Jn
- Dies definiert den Julianischen Tag, wobei n zwischen 1 und 365 liegt. Schalttage werden nicht gezählt. Der 29. Februar kann nicht dargestellt werden; der 28. Februar ist Tag 59, der 1. März ist immer Tag 60.
- n
- Dies definiert einen null-basierten Julianischen Tag, wobei n zwischen 0 und 365 liegt. Der 29. Februar wird in Schaltjahren gezählt.
- Mm.w.d
- Dies beschreibt Tag d (0 <= d <= 6) in Woche w (1 <= w <= 5) von m (1 <= m <= 12). Woche 1 ist die erste Woche, in der Tag d vorkommt und Woche 5 ist die letzte Woche, in der Tag d vorkommt. Tag 0 ist ein Sonntag.
TZ="NZST-12:00:00NZDT-13:00:00,M10.1.0,M3.3.0"Das dritte Format gibt an, dass die Zeitzoneninformationen aus einer Datei gelesen werden sollen:
:[filespec]
Wird hier keine Datei angegeben, so wird die Datei localtime im
Zeitzonenverzeichnis gelesen. Die Zeitzonendateien finden sich im Verzeichnis
/usr/share/zoneinfo. Das Dateiformat ist in tzfile(5)
dokumentiert. Mit filespec wird eine andere Datei im
tzfile(5)-Format angegeben, aus der die Zeitzoneninformationen gelesen
werden sollen. Sollte filespec nicht mit einem a '/' beginnen, so wird
der Pfad relativ zum Zeitzonenverzeichnis angenommen.
Hier ist ein Beispiel, wiederum für Neuseeland:
TZ=":Pacific/Auckland"
DATEIEN¶
Unter der Glibc wird das Zeitzonenverzeichnis des Systems über die Umgebungsvariable TZDIR ermittelt. Die Voreinstellung für TZDIR hängt von der Systemkonfiguration ab, ist aber normalerweise /usr/share/zoneinfo. Dieses Zeitzonenverzeichnis enthält die Dateienlocaltime lokale Zeitzonendatei posixrules Regeln für Zeitzonen nach POSIXHäufig ist /etc/localtime ein symbolischer Link auf die Datei localtime oder auf die korrekte Zeitzonendatei im systemweiten Zeitzonenverzeichnis.
KONFORM ZU¶
SVr4, POSIX.1-2001, 4.3BSD.ANMERKUNGEN¶
Beachten Sie bitte, dass die Variable daylight nicht bedeutet, dass im Moment Sommerzeit herrscht. Sie beschrieb früher die Nummer eines Algorithmus (siehe die Variable tz_dsttime in gettimeofday(2)). Sie ist seit vielen Jahren obsolet, wird jedoch von SUSv2 vorausgesetzt. BSD4.3 beinhaltete eine Routine char *timezone(zone, dst ), die den Namen der Zeitzone zurückgab, der dem ersten Argument (Minuten westlich von UTC) entsprach. Wenn das zweite Argument 0 war, wurde der Standardname verwendet, ansonsten die Sommerzeit-Version.SIEHE AUCH¶
date(1), gettimeofday(2), time(2), ctime(3), getenv(3), tzfile(5)KOLOPHON¶
Diese Seite ist Teil der Veröffentlichung 3.74 des Projekts Linux- man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter http://www.kernel.org/doc/man-pages/.ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von Walter Harms <walter.harms@informatik.uni-oldenburg.de>, Tobias Quathamer <toddy@debian.org>, Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german@lists.debian.org>.19. August 2014 |