Bash 检查时间是否在指定的窗口内

Bash 检查时间是否在指定的窗口内,bash,Bash,如果我在Bash中有以下格式的日期 time="Mar 18 2020 01:15:19" 我需要确定它是否在当前日期和时间窗口的30分钟内(即已过30分钟) 因此,如果当前日期时间为“2020年3月18日01:45:00”,则其计算结果为真 但是,如果当前日期时间为“2020年3月18日02:00:00”,则其计算结果将为false 我该怎么做呢 我该怎么做呢 将时间转换为自历元起的秒数 比较秒数 time="Mar 18 2020 01:15:19" if (( ($(date +%s)

如果我在Bash中有以下格式的日期

time="Mar 18 2020 01:15:19"
我需要确定它是否在当前日期和时间窗口的30分钟内(即已过30分钟)

因此,如果当前日期时间为“2020年3月18日01:45:00”,则其计算结果为真

但是,如果当前日期时间为“2020年3月18日02:00:00”,则其计算结果将为false

我该怎么做呢

我该怎么做呢

将时间转换为自历元起的秒数

比较秒数

time="Mar 18 2020 01:15:19"
if (( ($(date +%s) - $(date --date="$time" +%s)) < (30 * 60) )); then
     echo within;
else
    echo not within;
fi
time=“2020年3月18日01:15:19”
如果(($(日期+%s)-$(日期--date=“$time”+%s))<(30*60));然后
内心的回声;
其他的
回声不在里面;
fi
我该怎么做呢

将时间转换为自历元起的秒数

比较秒数

time="Mar 18 2020 01:15:19"
if (( ($(date +%s) - $(date --date="$time" +%s)) < (30 * 60) )); then
     echo within;
else
    echo not within;
fi
time=“2020年3月18日01:15:19”
如果(($(日期+%s)-$(日期--date=“$time”+%s))<(30*60));然后
内心的回声;
其他的
回声不在里面;
fi

这是否回答了您的问题?这回答了你的问题吗?