【问题标题】:remove millisecond from echo time bash从回声时间 bash 中删除毫秒
【发布时间】:2022-01-20 21:21:37
【问题描述】:

1633036680022,这是我从 elasticsearch 得到的 epoch 结果。 如果我试图将此 epcho 转换为人类可读的日期,

  1. 所以我用epochconverter
  2. 我使用 bash 命令在终端中进行了转换,
$ date -d @1633036680022

Tuesday 15 November 53718 05:30:22 PM IST

终端的输出显示年份 53718,因为纪元 '1633036680022' 以毫秒为单位。

我想要的只是,以秒为单位的纪元。

【问题讨论】:

  • ts=1633036680022; date -d "@${ts%???}"

标签: bash time timestamp epoch human-readable


【解决方案1】:

您可以除以 1000 并转换为时间戳。

date -d @"$(echo "1633036680022/1000" | bc)"

【讨论】:

  • 还有date -d "@$(( 1633036680022 / 1000 ))"
【解决方案2】:

使用bash 去除毫秒数(仅输出前 10 位数字):

x="1633036680022"
date -d "@${x:0:10}"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-18
    • 1970-01-01
    • 2013-02-22
    • 1970-01-01
    相关资源
    最近更新 更多