.\" -*- coding: UTF-8 -*- '\" t .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH tzset 3 "17. Mai 2025" "Linux man\-pages 6.15" .SH BEZEICHNUNG tzset, tzname, timezone, daylight \- initialisiert Informationen zur Zeitumstellung (Sommer\-/Winterzeit) .SH BIBLIOTHEK Standard\-C\-Bibliothek (\fIlibc\fP,\ \fI\-lc\fP) .SH ÜBERSICHT .nf \fB#include \fP .P \fBvoid tzset(void);\fP .P \fBextern char *\fP\fItzname\fP\fB[2];\fP \fBextern long \fP\fItimezone\fP\fB;\fP \fBextern int \fP\fIdaylight\fP\fB;\fP .fi .P .RS -4 Mit Glibc erforderliche Feature\-Test\-Makros (siehe \fBfeature_test_macros\fP(7)): .RE .P \fBtzset\fP(): .nf _POSIX_C_SOURCE .fi .P \fItzname\fP: .nf _POSIX_C_SOURCE .fi .P \fItimezone\fP, \fIdaylight\fP: .nf _XOPEN_SOURCE || /* Glibc >= 2.19: */ _DEFAULT_SOURCE || /* Glibc <= 2.19: */ _SVID_SOURCE .fi .SH BESCHREIBUNG Die Funktion \fBtzset\fP() initialisiert die Variable \fItzname\fP abhängig von der Umgebungsvariable \fBTZ\fP. 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: \fItimezone\fP (Sekunden westlich von UTC) sowie \fIdaylight\fP (0, falls diese Zeitzone keine Sommerzeit hat oder ungleich 0, falls es eine Zeit in der Vergangenheit, Gegenwart oder Zukunft gibt, in der die Sommerzeit gilt). .P Die Funktion \fBtzset\fP() initialisiert diese Variablen auf nicht festgelegte Werte, falls diese Zeitzone eine geographische Zeitzone wie »America/New_York« ist (siehe unten). .P Sollte die Umgebungsvariable \fBTZ\fP nicht gesetzt sein, wird die Systemzeitzone verwandt. Die Systemzeitzone wird durch Kopieren oder Linken einer Datei im Format \fBtzfile\fP(5) nach \fI/etc/localtime\fP konfiguriert. Eine Zeitzonendatenbank dieser Dateien kann sich im Systemzeitzonenverzeichnis (siehe Abschnitt \fBDATEIEN\fP weiter unten) befinden. .P Falls die Umgebungsvariable \fBTZ\fP 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. .P Ein nicht leerer Wert von \fBTZ\fP kann in einem von zwei Formaten vorliegen. Jedem kann ein Doppelpunkt vorangestellt werden, der ignoriert wird. Das erste Format ist eine Zeichenkette, die direkt die zu verwendende Zeitzone repräsentiert: .P .in +4n .EX \fIstd offset\fP[\fIdst\fP[\fIVersatz\fP][,\fIstart\fP[\fI/time\fP],\fIend\fP[\fI/time\fP]]] .EE .in .P Es gibt in der Spezifikation keine Leerzeichen. Die Zeichenkette \fIstd\fP definiert die Abkürzung der Zeitzone. Sie besteht aus wenigstens drei Buchstaben. Wird die Zeichenmenge in kleiner als (<) und größer als (>) eingeschlossen, so wird sie um das Pluszeichen (+), das Minuszeichen (\-) und Ziffern erweitert. Die Zeichenkette \fIVersatz\fP folgt unmittelbar und beschreibt den Wert, der hinzu addiert werden muss, um Coordinated Universal Time (UTC) zu erhalten. Der \fIVersatz\fP 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 00 und 59, die Sekunden ebenfalls: .P .in +4n .EX [\fI+\fP|\fI\-\fP]\fIhh\fP[\fI:mm\fP[\fI:ss\fP]] .EE .in .P Die Zeichenketten \fIdst\fP und \fIVersatz\fP bezeichnen den Namen und den Versatz der zugehörigen Sommerzeit. Falls der Versatz weggelassen wird, wird die Sommerzeit als eine Stunde vor der Standardzeit angenommen. .P Das Feld \fIstart\fP definiert den Beginn der Sommerzeit und \fIend\fP bezeichnet das Zurückschalten zur Normalzeit. Diese Felder können die folgenden Formate haben: .TP J\fIn\fP Dies definiert den Julianischen Tag, wobei \fIn\fP 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. .TP \fIn\fP Dies definiert einen null\-basierten Julianischen Tag, wobei \fIn\fP zwischen 0 und 365 liegt. Der 29. Februar wird in Schaltjahren gezählt. .TP M\fIm\fP.\fIw\fP.\fId\fP Dies beschreibt Tag \fId\fP (0\ <=\ \fId\fP\ <=\ 6) in Woche \fIw\fP (1\ <= \fIw\fP\ <=\ 5) von \fIm\fP (1\ <=\ \fIm\fP\ <=\ 12). Woche 1 ist die erste Woche, in der Tag \fId\fP vorkommt und Woche 5 ist die letzte Woche, in der Tag \fId\fP vorkommt. Tag 0 ist ein Sonntag. .P Die \fItime\fP\-Felder beschreiben in der gerade gültigen lokalen Zeit den Zeitpunkt, an dem der Wechsel zur anderen Zeit stattfindet. Sie verwenden das gleiche Format als \fIVersatz\fP, außer dass die Stunde im Bereich [\fB\-167\fP,\ \fB167\fP] liegen kann, um Zeiten vor und nach dem benannten Tag darzustellen. Ohne Angabe eines Wertes gilt die Voreinstellung 02:00:00. .P Hier ist ein Beispiel für Neuseeland, wo die Standardzeit (NZST) 12 Stunden früher als UTC und die Sommerzeit (NZDT) 13 Stunden früher als UTC ist. Die Sommerzeit gilt vom letzten Sonntag im September bis zum ersten Sonntag im April und die Wechsel finden zur voreingestellten Zeit von 02:00:00 Uhr statt: .P .in +4n .EX TZ="NZST\-12:00:00NZDT\-13:00:00,M9.5.0,M4.1.0/3" .EE .in .P Das zweite \[en] oder »geographische« \[en] Format gibt an, dass die Zeitzoneninformationen aus einer Datei gelesen werden sollen: .P .in +4n .EX Dateispezifikation .EE .in .P Das \fIDateispezifikation\fP legt eine \fBtzfile\fP(5)\-Formatdatei fest, aus der die Zeitzoneninformation gelesen werden soll. Falls \fIDateispezifikation\fP nicht mit einem »\fB/\fP« beginnt, ist die Dateispezifikation relativ zum System\-Zeitzonenverzeichnis. Falls die angegebene Datei nicht gelesen oder interpretiert werden kann, wird koordinierte Weltzeit (UTC) verwandt; allerdings sollten sich Anwendungen nicht darauf verlassen, dass eine zufällige \fIDateispezifikation\fP für UTC steht, da \fBTZ\fP\-Formate in der Zukunft erweitert werden könnten. .P Hier ist ein Beispiel, wiederum für Neuseeland: .P .in +4n .EX TZ="Pacific/Auckland" .EE .in .SH UMGEBUNGSVARIABLEN .TP \fBTZ\fP Falls diese Variable gesetzt ist, hat ihr Wert gegenüber der im System konfigurierten Zeitzone Vorrang. .TP \fBTZDIR\fP Falls diese Variable gesetzt ist, hat ihr Wert gegenüber dem im System konfigurierten Zeitzonendatenbankverzeichnispfad Vorrang. .SH DATEIEN .TP \fI/etc/localtime\fP Die Systemzeitzonendatei .TP \fI/usr/share/zoneinfo/\fP Das System\-Zeitzonen\-Datenbankverzeichnis .TP \fI/usr/share/zoneinfo/posixrules\fP Wenn eine TZ\-Zeichenkette eine dst\-Zeitzone (Sommerzeitzeitzone) enthält, der nichts folgt, dann wird diese Datei für Anfangs\- und Endregeln verwandt. Sie ist im \fBtzfile\fP(5)\-Format. Standardmäßig gibt es harte Links vom Zoneinfo\-Makefile zu der Tz\-Datei \fIAmerica/New_York\fP. .P Oben sind die aktuellen Standarddateiorte angegeben. Diese sind aber beim Kompilieren der Glibc konfigurierbar. .SH ATTRIBUTE Siehe \fBattributes\fP(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke. .TS allbox; lbx lb lb l l l. Schnittstelle Attribut Wert T{ .na .nh \fBtzset\fP() T} Multithread\-Fähigkeit MT\-Sicher env locale .TE .SH STANDARDS POSIX.1\-2024. .SH GESCHICHTE .TP \fBtzset\fP() .TQ \fItzname\fP POSIX.1\-1988, SVr4, 4.3BSD. .TP \fItimezone\fP .TQ \fIdaylight\fP POSIX.1\-2001 (XSI), SVr4, 4.3BSD. .P BSD4.3 beinhaltete eine Routine \fBchar *timezone(\fP\fIzone\fP\fB, \fP\fIdst\fP\fB)\fP, 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. .SH WARNUNGEN Da die Werte von \fItzname\fP, \fItimezone\fP und \fIdaylight\fP oft nicht spezifiziert sind und ein Zugriff darauf zu undefiniertem Verhalten im Multithread\-Anwendungen führen kann, sollte der Code stattdessen den Zeitzonenversatz und die Abkürzungen aus den Mitgliedern \fItm_gmtoff\fP und \fItm_zone\fP aus der heruntergebrochenen Zeitstruktur \fBtm\fP(3type) ermitteln. .SH FEHLER Da diese Funktion keine Fehler berichtet, kann nicht herausgefunden werden, ob der Wert von TZ eine gültiger Zeitzone darstellt. .SH "SIEHE AUCH" \fBdate\fP(1), \fBgettimeofday\fP(2), \fBtime\fP(2), \fBctime\fP(3), \fBgetenv\fP(3), \fBtzfile\fP(5) .PP .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Walter Harms , Dr. Tobias Quathamer , Martin Eberhard Schauer , Mario Blättermann und Helge Kreutzmann erstellt. .PP Diese Übersetzung ist Freie Dokumentation; lesen Sie die .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. .PP Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer: .MT debian-l10n-german@lists.debian.org .ME .