2

次の形式で 4 つの数値の組み合わせを格納するテキスト ファイルがあります。

Num1,Num2,Num3,Num4
Num5,Num6,Num7,Num8
.............

私はそのようなファイルをたくさん持っており、必要なのは、上記のパターンを含むすべてのファイル名を grep することです。

次のようにgrepを作成しました。

grep -l "{d+},{d+},{d+},{d+}" /some/path/to/file/name

grep は何も返さずに終了します。

私のgrepステートメントで何が間違っているのか、誰かが指摘できますか?

ありがとう

4

2 に答える 2

2

これはあなたが望むことをするはずです:

egrep -l '[[:digit:]]+,[[:digit:]]+,[[:digit:]]+,[[:digit:]]+' /some/path/to/file/name
于 2012-03-20T15:27:09.893 に答える
2

1 つの方法は、perl正規表現を使用することです。

grep -Pl "\d+,\d+,\d+,\d+" /some/path/to/file/name

あなたの構文dではリテラルです。その文字をエスケープする必要がありますが、grep通常の正規表現では受け入れられません。

于 2012-03-20T15:29:16.107 に答える