使用日期命令和时区更改日期

使用日期命令和时区更改日期

如何使用date命令更改日期以及更改时区。由于“IST”作为时区未设置为印度标准时间(即 UTC +05:30)(我正在寻找特定于 CentOS 7 的解决方案)

答案1

在大多数 Unices 中,系统时钟应设置为 UTC 时间。然后,应通过将TZ环境变量设置为某个值(例如Asia/Calcutta(逐个用户))或设置系统的时区,将时区设置为适当的值。该date命令不用于设置时区。

在不同的 Unice 上设置系统时区的方式可能有所不同。在 Ubuntu 上,这是通过命令完成的dpkg-reconfigure tzdata。在 OpenBSD 上,这是通过在(例如)/etc/localtime下创建指向正确时区文件的符号链接来完成的。/usr/share/zoneinfo/etc/localtime -> /usr/share/zoneinfo/Asia/Calcutta

答案2

使用 设置日期时date,会更改系统 RTC 存储的时间,系统 RTC 不存储时区信息。由操作系统将 RTC 时间解释为某个时区或另一个时区。 Linux 通常假设 RTC 时间采用 UTC,Windows 通常假设它采用本地时区。所以,在Linux中设置时间时,如果你给它时间为IST,它通常会将其转换为UTC,然后将UTC时间戳存储在RTC中。

简而言之:date设置时区的命令是错误的。适当的命令可能取决于您使用的特定操作系统或发行版。例如,参见:如何更改 CentOS 7 上的时区?

相关内容