mini-tips

Reemplazar texto en un archivo

En algunos casos reemplazar texto de un archivo y si este contiene varias palabras a reemplazar es útil usar sed.

Con el siguiente comando se puede reemplazar, como ejemplo, todas las entradas que contengan el termino hola a hello en un archivo llamado palabras.txt

sed 's/hola/hello/g' palabras.txt

Existen muchas otras formas, ¿Cual conoces o utilizas?

2 thoughts on “Reemplazar texto en un archivo”

  1. Con la forma que mencionas hay que recordar que muestra el cambio por pantalla, si quisiéramos hacerlo sobre el mismo fichero, hay que usar la opción ‘-i’ quedando algo asi:

    sed -i ‘s/hola/hello/g’ palabras.txt
    </pre

    También aprovecho para comentar que si se usa en un script, por lo menos en Bash y Dash, lo mas recomendable para no liarse con las '/' para representar el cambio, lo mejor es usar como separador '|' , quedando de la siguiente forma:

    sed ‘s|$cadena|$remplaza|g’ $file

    Un Saludo

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.