>Hola lista,
>
>necesito ayuda en un tema que a priori debería ser trivial, pero no
>consigo solucionarlo. Os comento. Tengo varios ficheros de texto y la
>intención es realizar sobre su contenido una sustitución masiva, me
>explico mejor. Tengo un fichero que tiene, por ejemplo la siguientes
>líneas:
>------------
> ############################
> ## ##
> ## -- daemons -- ##
> ## ##
>############################
>
>destination df_daemon {
> file("$DIR/daemon.log"
>}
>---------
>
>La idea es sustituir la variable $DIR, en todos los ficheros, por un
>valor que se establezca oportuno en dicho momento.
>
>Recorrer los ficheros de texto y su contenido no es complicado, pero
>realizar las sustituciones oportunas si. He probado a realizarlo con
>un sed, pero no consigo lo que deseo. La línea de sed que utilizo es
>la siguiente:
>---
>var=/home
>sed -e "s/$DIR/$var/g"
>---
>La salida es una sustitución de $DIR por $var, pero no por el
>contenido de ésta. Alguna idea de cómo solucionar este problema?
No entiendo muy bien donde están definidas esas variables. No sé si
quieres sustituirlo desde el bash, desde dentro del propio archivo,
o desde otro script...
Imaginemos que tienes este archivo:
#inicio archivo
destination df_daemon {
file("$DIR/daemon.log"
}
aqui pongo un $DIR y otro $DIR...
#fin archivo
si haces un "cat archivo | sed s/\$DIR/lala/g" tendrás:
#inicio output
destination df_daemon {
file("lala/daemon.log"
}
aqui pongo un lala y otro lala...
#fin output
si estas en el shell, puedes hacer un "e=sustitucion", con
lo que asignas a la variable $e el valor "sustitucion", y
haces un "cat archivo | sed s/\$DIR/$sustitucion/g";
#inicio output
destination df_daemon {
file("sustitucion/daemon.log"
}
aqui pongo un sustitucion y otro sustitucion...
#fin output
IMPORTANTE: vigila el argumento del sed... fíjate que no
he puesto $DIR sino \$DIR, para pasar el $ como literal.
Pero repito, me faltan datos, no sé desde donde vas a
realizar la sustitución.
>
>--
>Power by Debian.
>
>Un saludo,
Otro.
>
>Javier.
>
>
>
---------------------------------------------
Arnau Carrasco - http://www.arnaucarrasco.com
---------------------------------------------
--
To UNSUBSCRIBE, email to debian-user-spanish-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org