grepとかawkとかsortとかuniqueとか(niceも)
アクセスログのファイルに「/content」含まれないばあいにのIPアドレスだけ出力して、 ソートした後に集約して件数出して、その件数でソート(降順)して上位10件を出す。 にたいして、処理が重いので優先順位を下げる。
知らないコマンドとgrepの知らないオプションが使われていたので、メモする。
$ nice -n 19 grep -F '[19/Jun/2017:21:' access_log.20170619 | grep -Fv '/content' | awk -F '"' '{print $8}' | sort | uniq -c | sort -nr | head -10
Linuxコマンド集 - 【 nice 】 優先順位を決めてコマンドを実行する:ITpro