我有一个201908270700
格式的日期,但需要将其更改为yyyy/mm/dd hh:mm
,当我在谷歌上搜索时,我发现了很多用macOS命令行实现这一点的解决方案,但对于linux来说,解决方案不多,至少不是一个简单的解决方案。
在macOS上,你可以执行date -jf "%Y%m%d%H%M" "201908270700" "+%Y/%m/%d %H:%M"
,它会返回2019/08/27 07:00
,但看看GNU日期手册页,Linux上没有等效的选项,或者有吗?
有了变量中的日期,很容易将其格式化为GNU核心实用程序date(1)
所理解的形式:
$ dt=201908270700
$ date -d"${dt:0:8} ${dt:8:4}" "+%Y/%m/%d %H:%M"
2019/08/27 07:00
这将日期和时间拆分为单独的元素,然后可以根据coreutils文档中的纯数字规则对其进行解析。