
Eu sei que posso excluir linhas com mais de 100 caracteres com isto:
sed '/^.\{100\}..*/d'
Mas eu tenho a seguinte linha de exemplo:
<a href="http://xxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx">YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY</a><br>
Então, preciso excluir apenas as linhas onde "YYY":
">Y...Y...Y</a><br>
tem mais de 100 caracteres. Como posso fazer isso?
Estou usando o OpenBSD.
Responder1
grep -vE '">[^<>]{101,}</a><br>'
Para remover linhas que contêm mais de 100 caracteres diferentes de <> entre a ">
e a </a><br>
.
Responder2
O mesmo que acima (se bem entendi o que você quer fazer, isto é):
sed -e '/Y\{100\}/d'
Isso corresponde a todas as linhas contendo 100 Y consecutivas e as exclui.