elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Como exportar variables de un script a la shell principal.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Como exportar variables de un script a la shell principal.  (Leído 2,774 veces)
mario290386

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Como exportar variables de un script a la shell principal.
« en: 14 Octubre 2018, 09:34 am »

Hola a todos!!  :D
Tengo un problema que quizas sea algo sencillo de hacer pero no consigo resolver.
Tengo un archivo llamado config.sh que contiene lo siguiente:
Código:
export Ip1=60
export Ip2=100

Y en otro script llamado envia.sh tengo esto:
Código:
source config.sh
echo $ip1  $ip2

Lo que pretendo es que al ejecutar el script “envia.sh” se guarden estas variables de modo que pueda usarlas en la shell principal.
Cuando ejecuto el script “envia.sh” el comando echo me lo realiza correctamente y me muestra el valor de las 2 variables, pero cuando en la shell principal hago un “echo $ip1” el valor me aparece vacio, he intentado varios metodos pero no consigo que el proceso principal reconozca las variables pese a que han sido exportadas. No se si hay otro metodo especifico para hacer esto. Por supuesto el script tiene permisos de ejecución y lo ejecuto de esta manera ". envia.sh"
Espero que alguien pueda arrojarme algo de luz, saludos!!


« Última modificación: 14 Octubre 2018, 09:43 am por mario290386 » En línea

EdePC
Moderador Global
***
Conectado Conectado

Mensajes: 2.176



Ver Perfil
Re: Como exportar variables de un script a la shell principal.
« Respuesta #1 en: 14 Octubre 2018, 15:03 pm »

Saludos,

- Tengo entendido que las variables exportadas desde un Shell Padre solo son accesibles desde una Shell Hija, es decir, tienes que exportar tus variables y luego llamar a una Shell, esta nueva Shell hereda las variables exportadas.

Código
  1. [root@localhost ~]# cat config.sh
  2. export Ip1=60
  3. export Ip2=100
  4. [root@localhost ~]# cat envia.sh
  5. source config.sh
  6. bash
  7. [root@localhost ~]# ./envia.sh
  8. [root@localhost ~]# echo $Ip1 $Ip2
  9. 60 100
  10. [root@localhost ~]# echo $Ip1 $Ip2 in Child Bash
  11. 60 100  in Child Bash
  12. [root@localhost ~]# exit
  13. exit
  14. [root@localhost ~]#


En línea

mario290386

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Como exportar variables de un script a la shell principal.
« Respuesta #2 en: 14 Octubre 2018, 16:37 pm »

Muchas gracias ahora si me funciona!!  ;-) solo me faltaba añadir en el script "bash" imagino que la función de esto es llamar a una nueva shell y de esta manera se exportan.
Saludos!!
En línea

EdePC
Moderador Global
***
Conectado Conectado

Mensajes: 2.176



Ver Perfil
Re: Como exportar variables de un script a la shell principal.
« Respuesta #3 en: 15 Octubre 2018, 00:09 am »

- Correcto, se exportan las variables desde una Shell Padre, luego este Padre crea una Shell Hija que hereda las variables.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines