我希望创建一个每天通过 cron 作业运行的脚本:
- 如果日志发生在 15 分钟时间范围内并且包含关键字“disconnects”,则将 15 行或更多日志输出到文件
- 脚本运行完毕后通过电子邮件发送文件的输出
这是一个示例日志:
May 13 12:23:06 10.0.0.1 syslog: eventd_to_syslog():User[00:00:00:00:00:00] disconnects from WLAN[SSID-Name] at AP[AP-Name@00:00:00:00:00:00]
我创建了下面的脚本来按 AP 和日期/时间解析和排序 logfile.log。我只需将 15 分钟内发生的任何断开连接的频繁日志输出到文件中,然后通过电子邮件将该文件发送给我们的网络团队。
#!/bin/bash
filename='aplist'
filelines=`cat $filename`
for line in $filelines; do
grep -v Guest logfile.log | grep disconnects | sort -k 11 > 1-test-output
done