gpt4 book ai didi

bash - 如何在 UNIX 中将 "19-FEB-12"之类的字符串转换为纪元日期

转载 作者:行者123 更新时间:2023-11-29 08:43:48 24 4
gpt4 key购买 nike

在 UNIX 中如何将日期字符串转换为纪元毫秒:

19-FEB-12
16-FEB-12
05-AUG-09

我需要这个来将这些日期与服务器上的当前时间进行比较。

最佳答案

将日期转换为自纪元以来的秒数:

date --date="19-FEB-12" +%s

当前纪元:

date +%s

所以,因为你的日期是过去的:

NOW=`date +%s`
THEN=`date --date="19-FEB-12" +%s`

let DIFF=$NOW-$THEN
echo "The difference is: $DIFF"

使用 BSD 的 date 命令,您需要

$ date -j -f "%d-%B-%y" 19-FEB-12 +%s

与 GNU date 的区别:

  1. -j 阻止 date 尝试设置时钟
  2. 输入格式必须用-f明确设置
  3. 输入日期是一个常规参数,而不是一个选项(即 -d)
  4. 当日期没有指定时间时,使用当前时间代替午夜。

关于bash - 如何在 UNIX 中将 "19-FEB-12"之类的字符串转换为纪元日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14805591/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com