Sorgu süresi için bir saat dilimi belirleyebilirsiniz.
TZ=America/New_York date
TZ
Ayar ve date
komut arasındaki boşluklara dikkat edin . Bourne benzeri ve rc
benzeri kabuğunda, TZ
yalnızca komut satırı için değişken ayarlar . Diğer kabukları (In csh
, tcsh
, fish
), her zaman kullanabilirsiniz env
yerine komutu:
env TZ=America/New_York date
tl; Dr.
Linux sistemlerinde. saat dilimleri /usr/share/zoneinfo
dizindeki dosyalarda tanımlanır . Bu yapı genellikle kurucu katkısını onurlandırmak için "Olson veritabanı" olarak adlandırılır.
Her bir saat dilimi için kurallar, daha sonra bir ikili dosya halinde derlenen metin dosyası satırları olarak tanımlanır. Bu şekilde derlenen satırlar bölge adını tanımlar; bölgenin uygulandığı bir dizi veri ve zaman; standart süre için UTC'den bir ofset; ve eğer varsa, gün ışığından yararlanma zamanına geçişin nasıl gerçekleştiğini tanımlamak için kullanılan not.
Örneğin, "Amerika" dizini America/New_York
yukarıda kullanılan dosyada New York için gerekli bilgileri içerir .
Varolmayan bir bölgenin (dosya adı) belirtilmesinin sessizce göz ardı edildiğine ve UTC zamanlarının bildirildiğine dikkat edin. Örneğin, bu yanlış bir zaman raporlar:
TZ="America/New York" date ### WRONG ###
SUSv3 veya POSIX-2001 olarak bilinen Tek UNIX Özelliği, sürüm-3, taşınabilirlik için, saat dilimi açıklamasını tanımlayan karakter dizesinin iki nokta karakteriyle başlaması gerektiğini not eder. Böylece şunu da yazabiliriz:
TZ=":America/New_York" date
TZ=":America/Los_Angeles" date
SUSv3, bir açıklama dosyasına yol adı kullanarak zaman dilimlerinin belirtilmesine alternatif bir yöntem olarak, POSIX modelini açıklar. Bu formatta, bir dize şöyle tanımlanır:
std offset [dst[offset][,start-date[/time],end-date[/time]]]
std
standart bileşen adı nerede ve dst
gün ışığından yararlanma nerededir. Her isim üç veya daha fazla karakterden oluşur. offset
Meridyen olanlar doğu için ilk meridyenin batısında saat dilimleri için pozitif ve negatif. Ofset UTC'yi (daha önce GMT olarak bilinen) elde etmek için yerel saate eklenir. start
Ve end
standart / günışığı geçişler meydana geldiğinde zaman alanları göstermektedir.
Örneğin, Doğu Amerika Birleşik Devletleri'nde standart saat UTC'den 5 saat öncedir ve bunun EST5EDT
yerine belirtebiliriz America/New_York
. Bununla birlikte, bu alternatifler her zaman tanınmaz, özellikle de Amerika Birleşik Devletleri dışındaki bölgeler için ve en iyi şekilde kaçınılması gerekir.
HP-UX (SUSv3 uyumlu bir UNIX), /usr/lib/tztab
EST5EDT, CST6CDT, MST7MDT, PST8PDT gibi metin kurallarını ve POSIX adlarını kullanır. Dosya, Olson veritabanına benzer şekilde, her bir zaman dilimi için tüm tarihsel kuralları içerir.
NOT: Eğer şu dizin inceleyerek saat dilimleri tüm bulmak mümkün olmalıdır: /usr/share/zoneinfo
.