web-dev-qa-db-ja.com

与えられた範囲に*ない*行の長さを「grep」する方法は?

注:この質問は、このQ&Aの補足です:- 指定された範囲の行の長さを「grep」する方法


8文字未満または63文字を超える行、8文字を超え63文字未満の行をgrepするにはどうすればよいですか?

したがって、許容できる文字数は次のとおりです...

7 6 5 4 3 2 1 0

...そして...

64 65 66 67 ...
17
grep -xv '.\{8,63\}' <input >output

grep-xスイッチは行全体一致を示します。つまり、一致したパターンはすべて、先頭から末尾までの行を定義する必要があります。しています...

grep -x pattern

...一般的には...と同等です.

grep ^pattern$

grep-vスイッチは、行選択に対するパターンの影響を無効にします。一般的に...

grep pattern

...パターンに一致する行のみを選択しますが、-v否定パターン一致しないに一致する行のみが選択されます。

...など...

grep -xv '.\{8,63\}'

...先頭から末尾まで8〜63文字のすべての行に一致し、-v選択を否定すると、grepは他のすべてを出力するだけになります。

38
mikeserv