Linux/UNIX:TZ环境变量

时间:2020-01-09 10:42:22  来源:igfitidea点击:

与Linux或者UNIX操作系统一起使用的TZ(时区)环境变量的正确格式是什么?

TZ变量所需的格式由操作系统使用系统范围或者特定于用户的shell配置文件指定。
您可以通过将行追加到主目录中的.profile文件中来设置TZ并使此更改永久生效。
然后注销并再次登录。
在此示例中,我将TZ变量(时区)设置为印度标准时间(IST),如下所示:

TZ='Asia/Kolkata'
export TZ

例子

要显示当前日期和时间,请执行:

$ date

输出示例:

Sat Jan 29 06:21:38 EST 2011

时区设置为EST。
要查看确切的详细信息,请执行:

$ cat /etc/sysconfig/clock

输出示例:

ZONE="America/New_York"
UTC=true
ARC=false

要将时区设置为IST,请执行:

TZ='Asia/Kolkata'
export TZ

或者

export TZ='Asia/Kolkata'

要根据TZ变量显示日期和时间,请执行:

$ date

输出示例:

Sat Jan 29 16:54:46 IST 2011

如何永久更改TZ?

编辑$HOME/.profile或者$HOME/.bash_profile,在其后追加行,然后注销并再次登录:

TZ='Asia/Kolkata'; export TZ

如何使用Posix TZ格式设置时区?

您可以使用以下语法:

TZ='POSIX-fomat'
export TZ

在此示例中,将TZ设置为GST-10,即将其设置为GST区域,该区域比UTC(东部)早10小时:

TZ='GST-10'
export TZ
date

如何查找和查看Linux或者UNIX下的安装时区?

tzselect实用程序附带了许多类似UNIX的操作系统,以查看安装的时区。
如果您想知道其他国家的时间,或者只是想知道存在什么时区,它会很方便。
在没有任何参数的情况下调用tzselect。
它显示了大约十二个可以大致识别为大洲的地理区域的列表。
按编号选择地理区域后,将显示该区域中的国家和城市列表。
您可以按[Enter]键重新打印列表。
要选择时区,只需按左时数即可。
如果您输入的内容无效,该列表将被重新打印。
您可以随时按[CTRL] + [C] 中断tzselect。

$ tzselect

如何更改实际时区?

tzselect命令实际上不会为您更改时区。
在RHEL/Fedora/Redhat/CentOS Linux下使用redhat-config-date或者setup命令来更改timzone:

# redhat-config-date

在Debian或者Ubuntu Linux下使用dpkg-reconfigure tzdata命令可以实现相同的目的:

$ sudo dpkg-reconfigure tzdata

在OpenBSD或者FreeBSD操作系统下,您可以通过创建到/etc/localtime文件的软链接来设置时区。