タグ

ブックマーク / atzy.hatenadiary.org (1)

  • ログ集計にワンライナー - Atzy->getLog()

    私は、つい最近まで仕事ではPerlを使っていなかったのですが、例外もありました。それがワンライナーです。 どんなときに使うのかといえば、ログ(例えばApacheのアクセスログ)の集計です。私はこの手のワンライナーを何百作ったか知れません。(そして次々と使い捨てています。) ワンライナー ファイル処理のPerlワンライナーは次のように書きます。 perl -ne 'コード' fileこれは大まかには次のような意味となります。 while (<>) { コード } つまり、標準入力やファイルからデータを読み取って、一行ずつ処理します。 基形 ファイルの集計は基的に次の形となります。 perl -ne 'if(/パターンマッチ/){$c{$1}++}END{for(keys %c){print "$_ $c{$_}\n"}}' fileつまりは大まかには次の意味。 while (<>) {

    ログ集計にワンライナー - Atzy-&gt;getLog()
    gan2
    gan2 2013/11/20
  • 1