Provided by: manpages-ro-dev_4.27.0-1_all 

NUME
tzset, tzname, timezone, daylight - inițializează informațiile de conversie a orei
BIBLIOTECA
Biblioteca C standard (libc, -lc)
SINOPSIS
#include <time.h>
void tzset(void);
extern char *tzname[2];
extern long timezone;
extern int daylight;
Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):
tzset():
_POSIX_C_SOURCE
tzname:
_POSIX_C_SOURCE
timezone, daylight:
_XOPEN_SOURCE
|| /* glibc >= 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _SVID_SOURCE
DESCRIERE
Funcția tzset() inițializează variabila tzname din variabila de mediu TZ. Această funcție este apelată
automat de către celelalte funcții de conversie a orei care depind de fusul orar. Într-un mediu de tip
System-V, aceasta va defini, de asemenea, variabilele timezone (secunde la vest de UTC) și daylight (la 0
dacă în acest fus orar nu există reguli privind ora de vară sau la valoarea diferită de zero dacă există
un moment, trecut, prezent sau viitor, în care se aplică ora de vară).
Funcția tzset() inițializează aceste variabile la valori nespecificate dacă acest fus orar este un fus
orar geografic precum "America/New_York" (a se vedea mai jos).
În cazul în care variabila TZ nu apare în mediu, se utilizează fusul orar al sistemului. Fusul orar al
sistemului se configurează prin copierea, sau legarea unui fișier în format tzfile(5) în /etc/localtime.
O bază de date a fuselor orare din aceste fișiere poate fi localizată în directorul de fus orar al
sistemului (a se vedea secțiunea FIȘIERE de mai jos).
În cazul în care variabila TZ apare în mediu, dar valoarea sa este goală sau valoarea sa nu poate fi
interpretată folosind oricare dintre formatele specificate mai jos, se utilizează timpul universal
coordonat („Coordinated Universal Time”: UTC).
O valoare nevidă a lui TZ poate avea unul dintre cele două formate, oricare dintre acestea putând fi
precedat de două puncte, care sunt ignorate. Primul format este un șir de caractere care reprezintă
direct fusul orar care urmează să fie utilizat:
std decalaj[dst[decalaj][,început[/time],sfârșit[/time]]]
Specificația nu conține spații. Șirul std specifică o abreviere pentru fusul orar și trebuie să fie
format din trei sau mai multe caractere alfabetice. Atunci când este cuprins între semnele mai mic decât
(<) și mai mare decât (>), setul de caractere este extins pentru a include semnul plus (+), semnul minus
(-) și cifrele. Șirul decalaj urmează imediat după std și specifică valoarea timpului care trebuie
adăugată la ora locală pentru a obține timpul universal coordonat (UTC). decalaj este pozitiv dacă fusul
orar local se află la vest de meridianul de origine și negativ dacă se află la est. Ora trebuie să fie
cuprinsă între 0 și 24, iar minutele și secundele între 00 și 59:
[+|-]hh[:mm[:ss]]
Șirul dst și decalaj specifică numele și decalajul pentru fusul orar de vară corespunzător. În cazul în
care decalajul este omis, acesta este implicit cu o oră înainte de ora standard.
Câmpul început specifică momentul în care intră în vigoare ora de vară, iar câmpul sfârșit specifică
momentul în care se revine la ora standard. Aceste câmpuri pot avea următoarele formate:
Jn Aceasta specifică ziua iuliană cu n între 1 și 365. Zilele bisecte nu sunt luate în considerare.
În acest format, ziua de 29 februarie nu poate fi reprezentată; 28 februarie este ziua 59, iar 1
martie este întotdeauna ziua 60.
n Aceasta specifică ziua iuliană bazată pe zero, cu n între 0 și 365. Ziua de 29 februarie este
socotită în anii bisecți.
Ml.s.z Aceasta specifică ziua z (0 <= z <= 6) a săptămânii s (1 <= s <= 5) a lunii l (1 <= l <= 12).
Săptămâna 1 este prima săptămână în care apare ziua z, iar săptămâna 5 este ultima săptămână în
care apare ziua z. Ziua 0 este o duminică.
Câmpurile time specifică momentul în care, în ora locală în vigoare, are loc trecerea la cealaltă oră.
Acestea utilizează același format ca și decalaj, cu excepția faptului că ora poate fi în intervalul
[-167, 167] pentru a reprezenta momente înainte și după ziua numită. Dacă se omite, valoarea implicită
este 02:00:00.
Iată un exemplu pentru Noua Zeelandă, unde ora standard (NZST) este cu 12 ore înaintea UTC, iar ora de
vară (NZDT), cu 13 ore înaintea UTC, se aplică din ultima duminică a lunii septembrie, la ora implicită
02:00:00, până în prima duminică a lunii aprilie, la 03:00:00.
TZ="NZST-12:00:00NZDT-13:00:00,M9.5.0,M4.1.0/3"
Al doilea format - sau „geografic” - specifică faptul că informațiile privind fusul orar ar trebui să fie
citite dintr-un fișier:
filespec
filespec specifică un fișier în format tzfile(5) din care să se citească informațiile privind fusul orar.
Dacă filespec nu începe cu un caracter „/”, specificația fișierului este relativă la directorul de fus
orar al sistemului. Dacă fișierul specificat nu poate fi citit sau interpretat, se utilizează timpul
universal coordonat (UTC); cu toate acestea, aplicațiile nu trebuie să depindă de valorile aleatorii
filespec care reprezintă UTC, deoarece formatele TZ pot fi extinse în viitor.
Iată un exemplu, din nou pentru Noua Zeelandă:
TZ="Pacific/Auckland"
MEDIU
TZ Dacă această variabilă este definită, valoarea ei are prioritate față de fusul orar configurat de
sistem.
TZDIR Dacă această variabilă este definită, valoarea ei are prioritate față de ruta la directorul bazei
de date a fusului orar configurat de sistem.
FIȘIERE
/etc/localtime
Fișierul cu fusul orar al sistemului.
/usr/share/zoneinfo/
Directorul bazei de date cu fusul orar al sistemului.
/usr/share/zoneinfo/posixrules
Atunci când un șir TZ include un fus orar dst fără a fi urmat de nimic, atunci acest fișier este
utilizat pentru regulile de început și sfârșit. Acesta este în formatul tzfile(5). În mod
prestabilit, fișierul Makefile zoneinfo face o legătură dură cu fișierul tzfile America/New_York.
Cele de mai sus sunt locațiile standard actuale ale fișierelor, dar acestea sunt configurabile atunci
când glibc este compilată.
ATRIBUTE
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
┌──────────────────────────────────────────────────────────────┬───────────────────┬────────────────────┐
│ Interfață │ Atribut │ Valoare │
├──────────────────────────────────────────────────────────────┼───────────────────┼────────────────────┤
│ tzset() │ Siguranța firelor │ MT-Safe env locale │
└──────────────────────────────────────────────────────────────┴───────────────────┴────────────────────┘
STANDARDE
POSIX.1-2024.
ISTORIC
tzset()
tzname POSIX.1-1988, SVr4, 4.3BSD.
timezone
daylight
POSIX.1-2001 (XSI), SVr4, 4.3BSD.
4.3BSD avea o funcție char *timezone(zone, dst) care returna numele fusului orar corespunzător primului
său argument (minute la vest de UTC). Dacă al doilea argument era 0, se folosea numele standard, în caz
contrar se folosea versiunea pentru ora de vară.
PRECAUȚII
Deoarece valorile tzname, timezone și daylight sunt adesea nespecificate, iar accesarea lor poate duce la
un comportament nedefinit în aplicațiile cu mai multe fire de execuție, codul ar trebui să obțină în
schimb decalajul fusului orar și abrevierile din membrii tm_gmtoff și tm_zone ai structurii temporale
defalcate tm(3type).
CONSULTAȚI ȘI
date(1), gettimeofday(2), time(2), ctime(3), getenv(3), tzfile(5)
TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu
<remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o
versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO
RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-
ro@lists.sourceforge.net.
Pagini de manual de Linux 6.9.1 12 iunie 2024 tzset(3)