如何在命令行上将日期字符串转换为当前时区?


11

如何2011-11-13 08:11:02 +0000在命令行上将日期/时间字符串(例如)转换为本地时区?


不要犹豫,添加其他答案,但是请记住OS X具有BSD date而不是GNU date。选项是完全不同的。
丹尼尔·贝克

Answers:


17

使用date -jf "<input format>" "<input value>" +"<output format>"

以下内容将UTC日期转换为我的本地时区(CET):

$ date -jf "%Y-%m-%d %H:%M:%S %z" "2011-11-13 08:11:02 +0000" +"%Y_%m_%d__%H_%M_%S"
2011_11_13__09_11_02

如果为输入和输出指定相同的日期格式,则只会将时间转换为本地时区。但是,如示例中所示,您可以将其与格式转换结合使用。


2
可以通过临时设置来更改目标时区$TZTZ=EST date -jf %H%z 23+0100 +%I%p05PM
Lri
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.