[eside-ghost] shell scripting with sed

Alvaro Uría alvaro.uria en opendeusto.es
Mie Jul 15 15:47:43 CEST 2015


Aupi,

El 15 de julio de 2015, 9:14, ALi <osatien en gmail.com> escribió:

> ando probando con esto
>
> script.sed
> /nombre="${VARIABLE}"/ {
> r  nuevo.xml
> d
> }
>

El problema es que "sed" no puede leer variables de entorno. Tendrías que
hacer un bash script que tradujese esos nombres por valores.

Por ejemplo,
"""
NAME=script.sed
TEMPLATE=${NAME}.tpl
sed "s;\${VARIABLE};$VARIABLE;" <$TEMPLATE>$NAME
sed -f $NAME < nodos.xml
"""

Y que script.sed.tpl fuese:
"""
/nombre="${VARIABLE}"/ {
h
r nuevo.xml
N
}
"""

Donde "h" encola el patrón encontrado, "r" lee el fichero "nuevo.xml", y
"N" desencola el patrón. Con esto consigues insertar el contenido del
fichero antes que el patrón encontrado.

(si me ayudais y me decis ademas como insertar la linea matxeada pues es un
> plus .... del palo meter ficheroAntes lineaMatch ficheroDespues}
>
> gracias!!!
>

Espero que te sirva... puedes encontrar más detalles de comandos de sed en
http://www.grymoire.com/Unix/Sed.html

Saludos,
-Alvaro.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <https://listas.deusto.es/mailman/private/eside-ghost/attachments/20150715/d7d51b2e/attachment.html>


Más información sobre la lista de distribución eside-ghost