Comando Source: evitando la creación de subprocesos en Bash.-

Cuando se ejecuta desde una shell un comando o un script, se crea un subproceso (proceso hijo) de la shell que ejecuta el comando o el script (proceso padre).
Si el script que ejecuta el proceso hijo crea o modifica alguna variable de entorno, esos cambios o variables desaparecen cuando finaliza el comando o script.

Si deseamos que dichos cambios permanezcan, podemos utilizar el comando de Bash source. Este comando hace que el proceso o comando se ejecute sin crear ningún proceso hijo, de forma que los cambios efectuados en las variables de entorno y demás, se mantengan al finalizar el archivo.

Veamos el uso del comando source de Bash con un ejemplo.
Tenemos creado el script ejemplo_source.sh, que contiene el siguiente código:

#!/bin/bash
 VAR_EJEMPLO_SOURCE='www.aradaen.com';
 echo '$VAR_EJEMPLO_SOURCE='$VAR_EJEMPLO_SOURCE;

Al Ejecutarlo obtenemos :

$VAR_EJEMPLO_SOURCE=www.aradaen.com

Después de la ejecución del SCRIPT tratamos de ver el valor que tiene la variable, veremos que esta vacía. Pero si el SCRIPT lo ejecutamos con el comando SOURCE, el valor lo mantendrá, ya que no crea procesos HIJOS, sino que lo ejecuta en el mismo entorno.-

Esta entrada fue publicada en Unix - Linux. Guarda el enlace permanente.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.