Unix date命令具有纳秒精度。输入参数

时间:2018-12-11 22:09:22

标签: date unix

我很难以纳秒精度解析输入的日期:

date -d "15-OCT-18 12:40:01:000203570 AM" +"%d-%m-%Y %H:%M:%S:%N %p" date: invalid date `15-OCT-18 12:40:01:000203570 AM'

但是当我降低纳秒时,它可以正常工作:

date -d "15-OCT-18 12:40:01 AM" +"%d-%m-%Y %H:%M:%S %p" 15-10-2018 00:40:01 AM

查看文档,建议将大写字母N用于ns

即使我丢弃Ns,它也会为我生成ns

date -d "15-OCT-18 12:40:01 AM" +"%d-%m-%Y %H:%M:%S:%N %p" 15-10-2018 00:40:01:000000000 AM

我可能缺少一些小东西,但是任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:1)

应采用格式

date -d "15-OCT-18 12:40:01.000203570 AM" +"%d-%m-%Y %H:%M:%S:%N %p"

数据需要具有。而不是:耗时数秒和ns

答案 1 :(得分:0)

您需要将。秒点之前的:替换为。(点)

> date -d"$(echo "15-OCT-18 12:40:01:000203570 AM" | sed 's/:/./3')" +"%d-%m-%Y %H:%M:%S.%N %p"
15-10-2018 00:40:01.000203570 AM
>