15줄 이상의 로그를 파일에 출력하는 bash 스크립트(로그가 15분 시간 범위 내에 발생하는 경우)

15줄 이상의 로그를 파일에 출력하는 bash 스크립트(로그가 15분 시간 범위 내에 발생하는 경우)

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

관련 정보