V Taipei je 18 hodin, kolik je tady hodin?
date --date='TZ="Asia/Taipei" 18:00'
Fri Jul 16 11:00:00 BST 2010
Tady v Londýně v 11 hodin, kolik je hodin v Taipei?
TZ=Asia/Taipei date -d "11:00 BST"
Fri Jul 16 18:00:00 CST 2010
Myslím, že se to blíží tomu, na co se ptala OP (protože nemusí nutně vědět, že BST je Taipei? a odpověď nevysvětluje, jak se dostat do „Asie/Taipei“ z „BST“).
Nejprve mé aktuální datum:
$ date
Mon Apr 21 13:07:21 MDT 2014
Potom datum, které chci vědět:
$ date -d '5pm BST'
Mon Apr 21 15:00:00 MDT 2014
Takže vím, že 5pm BST
je 2 hodiny pryč.
Obvykle zapomínám, jestli musím přidat nebo odebrat dvě hodiny z časů EDT, takže mám malý skript s běžnými časovými pásmy, se kterými musím pracovat:
$ cat tz
#!/bin/bash
TZ='America/Edmonton' date
TZ='America/Chicago' date
TZ='America/New_York' date
A výstup:
$ tz
Mon Apr 21 13:12:32 MDT 2014
Mon Apr 21 14:12:32 CDT 2014
Mon Apr 21 15:12:32 EDT 2014
Platná místa pro váš tz
skript naleznete zde /usr/share/zoneinfo
.
Ale znovu, pro časy v budoucnu použiji pouze date -d '<time> <timezone>'
.
Tento příklad je z http://www.pixelbeat.org/cmdline.html#dates
Udává místní čas odpovídající 9:00 na západním pobřeží USA, což zohledňuje různé přechody denního světla.
date --date='TZ="America/Los_Angeles" 09:00 next Fri'
Pomocí tzselect získáte TZ. Formát PST je nejednoznačný. IST =například indický standardní čas a irský letní čas.