03-05-2008, 13:32
Tenemos un problema, te lo detallo con un ejemplo, tengo un script padre y un script hijo, y el script padre exporta una variable y llama al otro script pero lo llama en segundo plano, con & en el final de la sentencia, cuestion que este 2° script modifica el contenido de la variable de entorno del script padre, pero el script padre NO ve ese cambio, PERO si el script padre llama al otro script y NO lo manda a 2° plano la asignacion de la variable funciona perfecto, el problema es que NECESITO que el 2° script se ejecute en 2° plano y que este pueda modificar la/s variable/s de entorno del padre, aca te paso un ejemplo muy simple de la situacion:
programa1.sh
#!/bin/bash
export Nombre
. /root/programa2.sh &
echo "$Nombre"
--------------------------
programa2.sh
#!/bin/bash
Nombre="Pepe"
-------------------------
Si probas eso asi como esta vas a ver que lo que asigna programa 2 a la variable Nombre, no se ve desde programa 1, PERO si le sacas el & y llamas en 1 plano si anda, y si se ve lo que asigna el programa 2.
Bueno, ojala me puedas ayudar con esto porque es vital para el tp, Gracias Ari!! nos vemos!!!
Nazareno
programa1.sh
#!/bin/bash
export Nombre
. /root/programa2.sh &
echo "$Nombre"
--------------------------
programa2.sh
#!/bin/bash
Nombre="Pepe"
-------------------------
Si probas eso asi como esta vas a ver que lo que asigna programa 2 a la variable Nombre, no se ve desde programa 1, PERO si le sacas el & y llamas en 1 plano si anda, y si se ve lo que asigna el programa 2.
Bueno, ojala me puedas ayudar con esto porque es vital para el tp, Gracias Ari!! nos vemos!!!
Nazareno