シェル高速化メモ

tcpdumpの生データを毎秒集計し、csv化するツールを作った。

高速化の効果があった、ものをいくつかメモ

 

・生データをテキスト形式で一度保存する

    tcpdump -r *** > dump.txt

 

・パイプを多用する

・インクリメントはexprを使わず $*1で処理

・ if で値が同じか調べるとき == ではなく -eqを使う

・ループ内で処理することを避ける

 

生ファイルを直接grepにかけるのはアホだと感じました。(9GBあったしね)

あと地味にインクメントのやつ速くなるよ。

*1: $cnt + 1