Linux - 指定日期后在线并登录的用户

Linux - 指定日期后在线并登录的用户

我必须编写一个 shell 脚本,返回在指定日期之后登录的所有在线用户。

我试过

who | cut -d' ' -f1 | sort | uniq

但我不知道如何设置日期条件,使其晚于我手动给出的日期。

答案1

您可以通过多种方式解决这个问题,我通常更喜欢使用 epoch 来比较日期。

date命令可以轻松转换为纪元(自 1970-01-01 00:00:00 UTC 以来的秒数):

当前纪元日期/时间:

date +%s
1479994078

将任意日期转换为纪元:

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

您可以轻松地在 bash 中比较日期,扩展命令:

if [[ $(date +%s) >= $(date --date="19-FEB-12" +%s) ]]
  then
    ...
fi

相关内容