Linux 如何使用bash提取特定日期和时间的UTC偏移量?
具体来说,我不希望当前本地时间为Linux 如何使用bash提取特定日期和时间的UTC偏移量?,linux,bash,timezone,timezone-offset,Linux,Bash,Timezone,Timezone Offset,具体来说,我不希望当前本地时间为date+%z或date-R,但我需要非常类似的东西,可以用于过去的任何日期。例如,类似于: 命令2018-04-01 12:33:45 应在2018年4月1日当地时间12:33:45返回UTC偏移量(假设芝加哥为我的本地时区),例如芝加哥时间 我进行了广泛的搜索,可能没有任何问题接近这一点,每个人都希望当前偏移量而不是日期时间特定的偏移量,因此它不是重复的 非常感谢 更新: 我发现了一些东西,询问如何使用date命令获取过去的日期,然后我将其与-R结合,以获得接
date+%z
或date-R
,但我需要非常类似的东西,可以用于过去的任何日期。例如,类似于:
命令2018-04-01 12:33:45
应在2018年4月1日当地时间12:33:45返回UTC偏移量(假设芝加哥为我的本地时区),例如芝加哥时间
我进行了广泛的搜索,可能没有任何问题接近这一点,每个人都希望当前偏移量而不是日期时间特定的偏移量,因此它不是重复的
非常感谢
更新:
我发现了一些东西,询问如何使用date
命令获取过去的日期,然后我将其与-R
结合,以获得接近我想要的东西:
日期-d“35天前”-R
我可以返回35天并获取UTC偏移量。要将特定日期时间转换为UTC,可以使用下面的命令 例如,您在问题中提供的日期
2018-04-01 12:33:45
大概是下面的样子
date -u --date=@$(date "+%s" --date="2018-04-01 12:33:45")
其输出类似于2018年4月1日10:33:45 UTC周日的
如果您想在此处实现命令日期
,则可以为上述命令创建命令别名,或在脚本中使用上述命令,提供日期值以转换为参数
我根据
提交问题后我自己的更新
奥巴马的评论
引用我自己的“编辑”:
“我发现了一些东西,它回答了如何使用date命令获取过去的日期,然后我将其与-R
相结合,以获得接近我想要的东西:
日期-d“35天前”-R
我可以追溯到35天以前,获得UTC偏移量。”
下面是我们的评论,“日期d 2018-04-01T12:33:45-R
怎么样?”
这与我在“编辑”中写的内容一致。Nahuel的解决方案对我非常有效
另外,他的答案完美地提供了解决方案
总而言之,我(并非完全如此)的答案是:
date-d-specific\u-pass\u date-R
其中,特定的过去日期是我需要UTC偏移的日期,使用我在问题中提到的日期和时间,如果我:
日期-d 2018-04-01T12:33:45-R
我从芝加哥得到的
Sun,2018年4月1日12:33:45-0500
,这意味着芝加哥时间在2018年4月1日12:33:45比UTC晚了5个小时。如果给出的答案不充分,请考虑回答您的问题。