unix sed – sed reemplaza solo líneas con grupos coincidentes

Pregunta:

Actualmente, tengo este comando:

sed 's/\([^C]*\)/\1AB/'

Inserta "AB" antes de la primera instancia de "C" en una línea. Pero también agrega "AB" al final de cada línea sin una "C".

¿Cómo puedo hacer que solo se edite cuando encuentre "C"?

Respuesta:

¿Qué hay de malo en simplemente reemplazar la C ?

sed 's/C/ABC/'

Esto solo reemplazará la primera instancia (si quisiera reemplazarlos a todos, agregaría g al final).

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım