2012-09-04 8 views
11

私は指定されたパスに私のファイルの各列alertのカウントを取得するには、以下の「グレップ」コマンドを使用します。grep -cで得られた出力をどのようにソートするか?

grep 'alert' -F /usr/local/snort/rules/* -c 
私は昇順を言うorder-希望で出力結果を並べ替えるにはどうすればよい

、降順、名前順などです。これらのケースに固有の答えで十分です。

grep以外のコマンドも自由に提案できます。

+0

カラム== 2、セパレータ== ':'を持つ[Unix Sort with Tab Delimiter](http://stackoverflow.com/questions/1037365/unix-sort-with-tab-delimiter)の可能な複製。 –

答えて

22

パイプをソートします。ファイル名にコロンがないと仮定して、 " - "オプションを使用してコロンをフィールドサパライタとして指定します。数値ソートには-nを使用します。

例:

grep 'alert' -F /usr/local/snort/rules/* -c | sort -t: -n -k2 

により区切られたフィールドに行を分割しなければならない「:」、ソーティングのための第2のフィールドを使用し、(SO 21は3よりも後の実際に)数値として扱います。

関連する問題