我正在尝试在 macOS 上的 bash 中将日期字符串转换为纪元时间。我知道 Mac 的版本date
与 Linux 的版本略有不同 - 我不知道我哪里做错了。
这是我正在尝试的示例表达式:
echo "$(date -j -u -f "%m/%d/%Y %H:%M:%S" +%s "08/08/20 20:20:00")"
返回:
date: nonexistent time
有什么线索吗?!
答案1
好的 - 只是需要休息一下以便让我的头脑清醒一下。:-) 我需要使用的是这个:
date -j -u -f "%m/%d/%y %H:%M:%S" +%s "08/08/20 20:20:00"
(也就是说,%y
而不是%Y
)
期望%Y
年份为 4 位数,因此给出的年份08/08/20
指的是公元 20 年的某一天 - 即纪元开始之前 - 因此不存在时间。