阿毛
It's me !
想你所想
Linux命令之date

date命令获取指定时区时间

参考Linux date命令获取指定时区的时间

date 指定目标时间进行转换处理

date -d “${date_str}”
-d 选项可用于指定需要转换的目标时间。如果指定的目标时间格式为世界时间格式,如’%Y-%m-%dT%H:%M:%S%_z’或’%Y-%m-%d %H:%M:%S%_z’,那么date会将给定的目标时间视为世界时,在此基础上进行转换。如果不是世界时格式,那么它将认为就是本地时间,不会进行世界时逻辑的转换。验证如下(该验证过程在Ubuntu上进行):

~$ TZ=Asia/Shanghai date -d '2021-07-08T06:30:00+00:00'
Thu Jul  8 14:30:00 CST 2021
~$ TZ=Asia/Shanghai date -d '2021-07-08 06:30:00'
Thu Jul  8 06:30:00 CST 2021
~$ TZ=Asia/Shanghai date -d '2021-07-08 06:30:00+00:00'
Thu Jul  8 14:30:00 CST 2021
~$ TZ=UTC-8 date -d '2021-07-08 06:30:00+00:00'
Thu Jul  8 14:30:00 UTC 2021
~$ TZ=UTC-8 date -d '2021-07-08 06:30:00'
Thu Jul  8 06:30:00 UTC 2021
~$ TZ=UTC-8 date -d '2021-07-08T06:30:00'
Thu Jul  8 06:30:00 UTC 2021

如上,-d后指定目标时间为“2021-07-08T06:30:00+00:00”或“2021-07-08 06:30:00+00:00”这种世界时格式的话,date就会认为其为世界时,然后在此基础上进行转换,如+8处理。否则,就认为本地时间,不处理。这里“Asia/Shanghai”和“UTC-8”等同。

发表评论

textsms
account_circle
email

想你所想

Linux命令之date
date命令获取指定时区时间 参考Linux date命令获取指定时区的时间 date 指定目标时间进行转换处理 date -d "${date_str}"-d 选项可用于指定需要转换的目标时间。如果指定的…
扫描二维码继续阅读
2021-07-08