Tengo un script de configuración llamado config.sh en el que defino diferentes variables de uso temporal, por ejemplo:
Código:
export ip1=99
export ip2=100
Y luego tengo un script llamado general.sh desde el cual quiero ejecutar el script anterior config.sh, este es su contenido
Código:
#!/bin/bash
echo exportando variables
. config.sh
source config.sh
Pues el problema es que no consigo exportar esas variables, al ejecutar desde la terminal el script "general.sh" se ejecuta todo sin problemas pero si hago un "echo $ip1" la variable no tiene ningún valor, lo curioso es que si desde la terminal añado "source config.sh" entonces la variable $ip1 si que me devuelve su valor.
No entiendo porque al poner "source config.sh" desde el script no se asignan las variables y al hacerlo desde la terminal si se añaden, que estoy haciendo mal? he probado varias cosas como " echo 'source config.sh' " pero no consigo que funcione desde el script. Entonces, ¿de que manera se añaden ejecutan comandos desde un script como si fuesen desde la terminal?
Gracias!