Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/10/2008, 22:54
Juanchooo
 
Fecha de Ingreso: diciembre-2004
Mensajes: 272
Antigüedad: 19 años, 11 meses
Puntos: 4
sustituir en archivo NO linea por linea

Saludos a todos,


despues de tanto buscar no he encontrado nada para solucionar mi problema, el asunto es el siguiente:

Quiero remplazar una cadena por otra en un archivo de texto, el problema es que, al momento de ejecutar la instruccion, solo me remplaza las cadenas que estan en una misma linea, ya que la instruccion se ejecuta y hace la busqueda y remplazo linea por linea.

Existe alguna manera para hacer que la busqueda sea continua ? es decir, que busque en todo el archivo como un todo, y no linea por linea.

A continuacion pongo un ejemplo:

Suponiendo que archivo.txt contiene:

--------------
hola, esto es una prueba
y cambia esto por otro texto
y cambia esto por otro texto
y NO cambia
esto por otro texto
--------------

La instruccion es:

perl -pi.BAK -e "s/cambia\s+esto/porEsto/g" archivo.txt

El resultado que no quiero es:

--------------
hola, esto es una prueba
y porEsto por otro texto
y porEsto por otro texto
y NO cambia
esto por otro texto
--------------

el resultado que necesito es:

--------------
hola, esto es una prueba
y porEsto por otro texto
y porEsto por otro texto
y NO porEsto por otro texto
--------------


Alguien tiene alguna sugerencia al respecto ???

Gracias.