BASH – Como pasar variables dentro de un SCRIPT BASH a SED.-

Puede que en algún momento necesitemos pasar una variable obtenida en un script al comando SED, para realizar algún cambio en archivos. Para el siguiente ejemplo, utilizaremos un archivo llamado «prueba.txt», el cual contiene los siguientes datos:

uno
dos
tres
uno
dos
cuatro
cinco
dos

Necesitamos cambiar el valor «dos» por «seis». La única forma que me ha resultado para realizarlo es utilizando las comillas dobles y simples como se indica en el siguiente SCRIPT :

#!/bin/bash
a="seis"
sed -e 's/dos/'"$a"'/g' prueba.txt >> nueva.txt

Al lanzar este SCRIPT nos generar un nuevo archivo (nueva.txt) con los siguientes datos :

uno
seis
tres
uno
seis
cuatro
cinco
seis

Para realizar el cambio directamente en el archivo, se puede realizar mediante el lenguaje PERL, con la siguiente instrucción :

perl -p -i -e 's/dos/seis/g' prueba.txt
Esta entrada fue publicada en Unix - Linux. Guarda el enlace permanente.

Deja una respuesta

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