¿Cómo eliminar líneas donde la parte dada de la línea tiene más de 100 caracteres?

¿Cómo eliminar líneas donde la parte dada de la línea tiene más de 100 caracteres?

Sé que puedo eliminar líneas de más de 100 caracteres con esto:

sed '/^.\{100\}..*/d'

Pero tengo la siguiente línea de ejemplo:

<a href="http://xxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx">YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY</a><br>

Así que sólo necesito eliminar las líneas donde "YYY":

">Y...Y...Y</a><br>

tiene más de 100 caracteres. ¿Cómo puedo hacer esto?

Estoy usando OpenBSD.

Respuesta1

grep -vE '">[^<>]{101,}</a><br>'

Para eliminar líneas que contienen más de 100 caracteres distintos de <> entre a ">y a </a><br>.

Respuesta2

Lo mismo que arriba (si entiendo bien lo que quieres hacer, es decir):

sed -e '/Y\{100\}/d'

Esto hace coincidir todas las líneas que contienen 100 Y seguidas y las elimina.

información relacionada