¿Cómo usaría sed para insertar un carácter en una determinada posición de carácter en solo UNA línea?

¿Cómo usaría sed para insertar un carácter en una determinada posición de carácter en solo UNA línea?

Soy consciente de que esto hará lo que quiero en todas las líneas:

sed 's/^\(.\{4\}\)/\1-/' textFile

Pero, ¿cómo podría ingresar un - después del cuarto espacio de carácter SÓLO en la quinta línea? ¿O incluso mejor, en una variedad de líneas, como de 5 a 7?

Respuesta1

La primera parte de un sedcomando es una especificación de rango que indica qué línea desea afectar. El valor predeterminado, si no se especifica ningún rango, son todas las líneas. Entonces:

sed '5,7s/^\(.\{4\}\)/\1-/' textFile

deberías hacer lo que quieras.

información relacionada