マニュアルページには次のようgrep
に記載されています。
-c
,--count
: 通常の出力を抑制し、代わりに各入力ファイルに対して一致する行数を出力します。
与えられた:
# grep -R -c sleeping /proc/*/status
数の代わりにリストを取得します(下)。
# grep -R sleeping /proc/*/status | wc -l
何が問題ですかgrep -c
?上記のコマンドでカウントを取得せずに)を使用せずに何をしていますかwc -l
?
ベストアンサー1
grep -c
各入力ファイルに対して個別に一致する行数を提供します(実際にはマニュアルで引用したものです)。
$ grep -c user chmod.1 chown.1
chmod.1:20
chown.1:5
だからchmod.1
20のゲームがあり、chown.1
5つのゲームがあります。
ここで、ファイル名のリストは通常のgrepのように動作します。つまり、入力ファイルが複数ある場合はファイル名がリストされますが、入力ファイルが 1 つしかない場合はファイル名はリストされません。少なくともGNU grepでは、-H
フラグを使用して-h
変更できます。
だから、
$ grep -c user chmod.1
20
$ grep -cH user chmod.1
chmod.1:20