用于记录关闭和重新启动的脚本

用于记录关闭和重新启动的脚本

我正在尝试创建一个脚本,该脚本将作为 cronjob 每天运行并记录所有关闭和重新启动。我已经想出了这个,但是 grep 似乎被忽略了,并且脚本的输出为last -x shutdown reboot.

set ydate = $(date --date yesterday “+%b %d”)
last -x shutdown reboot | grep "$ydate" >>/var/log/down

如何才能仅捕获前一天的重新启动和关闭?

答案1

这可能是一个解决方案:

#!/bin/bash
YEST=$(date "--date=${today} -1 day" +%Y%m%d235959)
YEST_ONLY=$(date "--date=${today} -1 day" +"%b %e")
last -t $YEST -x shutdown reboot | grep "$YEST_ONLY"
  • 第一行:输出昨天的日期,格式为YYYYMMDDHHMMSS.这就是Expect 作为参数last格式的方式-t
  • 第二行:创建Mon DD昨天的格式。为什么?因为-tfromlast不搜索特定日期。它将获取一个时间并搜索那个时间旧链接入口。
  • 最后,make lastshow昨天和更旧的内容shutdownreboot日志,grep昨天作为过滤器。

是的。我同意last可以有一个特定日期的日期参数。

相关内容