小编Bla*_*sso的帖子

如何比较脚本中的两个日期以检查到期时间

我正在创建一个脚本,我可以在其中检查某些内容是否已过期,例如 kerberos 票证缓存。

我需要获取到期日期/时间,获取当前日期/时间,并比较它们以查看第一个日期/时间是否会过期。

我正在创建一个脚本来查看 kerberos 票证是否仍然有效或已过期。

我可以以纪元格式获取两者的到期日期+时间(假设这是最好的)。

KRBEXPDATE=$(klist | grep -i krbtgt | awk '{print $3}')
KRBEXPTIME=$(klist | grep -i krbtgt | awk '{print $4}')
CURREPOCH=$(date +%s)
KRBEXPEPOCH=$(date --date="$KRBEXPDATE $KRBEXPTIME" +%s)
Run Code Online (Sandbox Code Playgroud)

我想看看 kerberos 票证是否在 if 语句中过期,我在处理时间的 if 语句上的逻辑有问题。我可能已经在这里回答了我自己的问题,但如果 CURRENTEPOCH 大于 KRBEXPEPOCH,则回显“票无效”。这有意义吗?

if [[ "$CURREPOCH" > "$KRBEXPEPOCH" ]] ;
then
  echo "Ticket is not valid"
fi
Run Code Online (Sandbox Code Playgroud)

bash shell-script

0
推荐指数
1
解决办法
1万
查看次数

标签 统计

bash ×1

shell-script ×1