如何在CLI中自动将ET替换为EST/EDT并通过GNU date转换为本地时间
问题描述
我尝试通过CLI使用GNU date命令将东部时间转换为本地时间。
执行以下命令后报错:
$ remoteTime="8:03pm ET" $ date -d "$remoteTime" date: invalid date ‘8:03 pm ET’
原因是GNU date命令仅识别EST(东部标准时间)或EDT(东部夏令时),不支持ET这个通用缩写。
请问如何修改bash变量remoteTime,让它根据当前季节自动把ET替换为对应的EST(秋冬)或EDT(春夏)?
解决方案
我找到了时区数据库列表,整理出可行的解决方法:
$ remoteTime="8:03pm ET" $ remoteTZ=$(TZ=US/Eastern date '+%Z') $ remoteTime=${remoteTime/ ET/ $remoteTZ} $ date -d "$remoteTime"
内容的提问来源于stack exchange,提问作者SebMa
相关产品推荐
相关产品推荐

