複数行のファイルがたくさんありますが、ほとんどの場合、行の 1 つに特定のパターンが含まれています。このパターンの行を持たないすべてのファイルをリストしたいと思います。
16257 次
3 に答える
39
パターンなしでファイルを作成するには、「-L」オプションを使用します。マニュアルページによると:
-L, --files-without-match
通常の出力を抑制します。代わりに、通常出力が出力されない各入力ファイルの名前を出力します。スキャンは最初の一致で停止します。
于 2009-05-19T07:09:53.890 に答える
6
grep は一致があったかどうかを示すために 0/1 を返すので、次のようなことができます。
for f in *.txt; do
if ! grep -q "some expression" $f; then
echo $f
fi
done
編集: -L オプションも使用できます。
grep -L "何らかの式" *
于 2009-05-19T07:01:17.710 に答える
0
"count" を試して、":0" に等しい場所をフィルター処理してください:
grep -c [pattern] * | grep ':0$'
(TurboGREP咳を使用する場合、 -L スイッチはありません;))
(編集:名前に「:0」を含むファイルがある場合に備えて、正規表現の最後に「$」を追加しました)
于 2009-05-19T07:11:21.017 に答える