bash 中日期字符串到纪元

bash 中日期字符串到纪元

如果我有以下格式的字符串,如何获取纪元?
1/30/2017 11:14:55 AM
以下不起作用:

$ date -j  '1/30/2017 11:14:55 AM' +'%m/%d/%Y %H:%M:%S'  
date: illegal time format

答案1

只需使用以下命令指定输入格式-f

$ date -jf '%m/%d/%Y %H:%M:%S %p' '1/30/2017 11:14:55 AM' '+%m/%d/%Y %H:%M:%S'
01/30/2017 11:14:55

接下来+输出格式。如果你想要纪元时间,那就是+%s

(请注意,该代码中没有任何bash特定内容。该代码在任何 shell 中都会被相同地解析,甚至是非 Bourne 类的 shell。date不是bash内置命令,这里是date在文件系统上找到的命令,特别是支持这些-f/ BSD 扩展在非BSD系统上,无论-jshell 是或其他,该命令都可能无法工作bashzshksh93bash

相关内容