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

ベストアンサー1

おすすめ記事