File:  [NetBSD Developer Wiki] / wikisrc / tutorials / how_to_set_up_per-user_timezones.mdwn
Revision 1.1: download - view: text, annotated - select for diffs
Sun Nov 20 20:55:21 2011 UTC (2 years, 5 months ago) by mspo
Branches: MAIN
CVS tags: HEAD
import all of the how-to articles from the pkgsrc.se wiki

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.

##  References

  * [environ(7)](http://netbsd.gw.com/cgi-bin/man-cgi?environ+7+NetBSD-current)

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb