次のようなステートメントで access_logs を確認しています。
cat access_log | grep 16/Sep/2012:17 | awk '{print $12 $13 $14 $15 $16}' | sort | uniq -c | sort -n | tail -40
目的は、過去 1 時間にサーバーにアクセスしたユーザーのユーザー エージェントを、ヒット数でソートして表示することです。サーバーに異常なアクティビティがあり、不要なスパイダーなどを停止したい。
しかし、part:awk '{print $12 $13 $14 $15 $16}'
は次のようなものとして非常に好まれます:awk '{print $12-through-end-of-line}'
それぞれの長さが異なるユーザーエージェント全体を見ることができます。
awkでこれを行う方法はありますか?