1

全て、

モジュールから見つからないというエントリを含む大きなサーバーログがあります

モジュールの位置に続く引用符の直後です。ファイルの長さは4,800行を超え、各モジュールは100回以上表示される場合があります。したがって、私がやりたいのはwc -lのようなものですが、サーバーログのモジュール名の部分にある一意の値の数だけを表示します。何か案は?

4

4 に答える 4

3

grep -oP '(?<=not found from Module ")[^"]+(?=")' logfile | sort -u | wc -l

于 2012-11-15T20:47:53.987 に答える
3
grep 'entry: not found from Module' logfile | sort -u | wc -l
于 2012-11-15T20:50:59.613 に答える
1
perl -nlwe '$a{$_}++ }{ print "$_ : $a{$_}" for keys %a' log.txt

各行にハッシュキーを作成し、最後にキーを印刷します。

于 2012-11-15T20:49:40.863 に答える
0
awk '{count[$NF]++} END{ for (mod in count) print mod, count[mod] }' file

おそらくあなたが望むものに近いですが、いくつかのサンプル入力と期待される出力なしでは推測するのは難しいです。

于 2012-11-15T20:49:34.327 に答える