
次のようにすれば、100 文字を超える行を削除できることはわかっています。
sed '/^.\{100\}..*/d'
しかし、次のような例があります:
<a href="http://xxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx">YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY</a><br>
したがって、「YYY」の行のみを削除する必要があります。
">Y...Y...Y</a><br>
100 文字を超えています。どうすればいいですか?
私はOpenBSDを使用しています。
答え1
grep -vE '">[^<>]{101,}</a><br>'
">
aと a の間に 100 個を超える <> 以外の文字が含まれる行を削除します</a><br>
。
答え2
上記と同じです(つまり、あなたが何をしたいのか私が正しく理解していれば):
sed -e '/Y\{100\}/d'
これは、100 個の Y が連続して含まれるすべての行に一致し、それらを削除します。