首页 > 解决方案 > 如何找到以毫秒为单位的两个纪元时间之间的差异 shell 脚本

问题描述

我想计算以纪元 ms 为单位的令牌到期时间与以纪元 ms 为单位的当前时间之间的差异。

令牌的示例到期时间是16402379927082021 年 12 月 12 日,当前时间假设是16341080982422021 年 10 月 13 日。

基本上我想计算两个时间戳之间的天数差异。

比如如果差值小于 10 天并且令牌将在 10 天后到期,则需要创建一个新令牌。

知道如何在几天内获得差异并将其与 10 天进行比较吗?

需要用shell脚本编写。

标签: linuxshellunixtime

解决方案


一种天真的方法是:

a=1640237992708
b=1634108098242
diff="$((a-b))"
max_diff=$((1000 * 60 * 60 * 24 * 10))
if test "$diff" -gt "$max_diff"
then
  echo "Diff is higher than $max_diff"
fi

推荐阅读