Página 1 de 1

Uso de sed

NotaPublicado: 2008-05-12 03:49 @201
por rfm
Hola a todos.

Tengo una duda sobre el uso de sed.

Quiero modificar una línea de un fichero; dicha línea tiene la palabra "leftcert=loquesea" y quiero cambiar la línea entera por "leftcert=otracosa".

He intentado lo siguiente pero no funciona así:

Código: Seleccionar todo
cat fichero | sed 's/leftcert*/leftcert=$myVariable/g' > fichero


¿Alguien me puede echar una mano?

Muchas gracias

NotaPublicado: 2008-05-12 05:24 @267
por explorer
El principal problema es que no puedes hacer un cat a un fichero y al mismo tiempo escribir en él. Hay que agregar la opción '-i' para que haga el cambio in-situ.

Código: Seleccionar todo
sed -i 's/leftcert=.*/leftcert=otracosa/g' fichero


Vamos, lo mismo que haríamos en Perl:
Código: Seleccionar todo
perl -pi -e 's/leftcert=.*/leftcert=otracosa/g' fichero