Ejecutar archivo de configuración con variables desde source

Iniciado por mario290386, 23 Junio 2018, 12:18 PM

0 Miembros y 1 Visitante están viendo este tema.

mario290386

Hola a todos!! tengo un problema que no consigo resolver, haber si le ha pasado a alguien y me puede echar una mano :D

Tengo un script de configuración llamado config.sh en el que defino diferentes variables de uso temporal, por ejemplo:
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
#!/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!

mario290386

Por favor cualquier pista me serviría de ayuda :rolleyes:, no entiendo como el mismo comando al ejecutarlo por la terminal si que me guarda las variables pero si lo ejecuto mediante un script la variable me aparece vacía, y sin duda es el mismo comando, parece que al intentar ejecutar fuera de la terminal el comando source  se comporta de manera distinta y hace falta otra sintaxis al ser un comando de sistema.