Besides setting up the global system timezone by symlinking /etc/localtime
to a file in /usr/share/zoneinfo
, you can also set a timezone that applies
only for one user. This is done by setting the environment variable TZ
.
You can set it in your startup file like this:
$ echo 'export TZ=Europe/Amsterdam' >> ~/.profile
From this shell all subsequent [date] calls will use the
/usr/share/zoneinfo/Europe/Amsterdam
file for translating the system's UTC
time to your local time.
To run a single process with a specific timezone, try something like this:
$ env TZ=Canada/Eastern xclock -d -strftime "Toronto: %a, %d %b, %H:%M" &
This will start an environment with the TZ variable set to Canada/Eastern, and run a digital (-d) xclock with the time formatted as instructed by -strfime, including putting a note about which timezone it belongs to ("Toronto"). This process will detach from the terminal (because of the &), but leave the environment you ran it from with the same timezone it began with. With a setup like this, one can run an xclock (or many xclocks) displaying the localtime of various timezones around the world.