MacのBashでこれを行うことができます。
grep ".\{81,\}" foo.txt
81 文字以上を含むファイルのすべての行をインポートし、foo.txt
次を使用するには:
grep -v ".\{81,\}" foo.txt
最大80文字のすべての行を取得します。 (-v
「逆に」)
しかし、私が使うなら
grep ".\{,81\}" foo.txt
それは言うでしょうgrep: invalid repetition count(s)
。
私が使うなら
grep ".\{0,81\}" foo.txt
長さに関係なくすべての行を提供します。
上記の最後の2つのフォームはどのように機能しますか?正規表現形式に従います。
.{,80}
80文字以下のすべての文字を表します。
ベストアンサー1
grep ".\{0,81\}" foo.txt
すべての行がこれと一致します。行に82文字がある場合、行も81文字になります。あなたが必要とする:
- 行の先頭から最後まで 0 ~ 81 文字になるように正規表現を
^
and で囲みます。または$
- 行がこの正規表現と正確に一致することを指定するために使用されます
-x
(上記のオプションと同じ)。
だから:
grep "^.\{0,81\}$" foo.txt
grep -x ".\{0,81\}" foo.txt