Re: script para cambiar DISPLAY
On Fri, 25 Aug 2000, Ignacio García Fernández wrote:
> Tengo un script para cambiar la variable DISPLAY que dice así:
>
> #! /usr/bin/sh
> export DISPLAY=maquina.remota.es
>
> El caso es que lo ejecuto y no pasa absolutamente nada.
>
> Tampoco ocurre nada si le digo
>
> $ sh ./script
>
> Alguien puede echarme una mano?
Esa me la sé. Si lo ejecutas con el nombre del script
('./script') o especificando un shell ('sh ./script') (ambas cosas son
equivalentes) la asignación de la variable DISPLAY y la 'exportación' de
dicha variable se realizan en el entorno del shell creado para ejecutar el
script. Cuando termina el script, ese shell acaba y su entorno se
pierde. Sus hijos (si hubiera tenido alguno) habrían heredado las
variables 'exportadas'. Pero el shell desde el que hemos ejecutado el
script es _su_padre_ y, claro, no hereda nada. Todo se ha perdido.
Lo que queremos en este caso es que las instrucciones contenidas
en ese script se ejecuten _en_nuestro_shell_ y que no se cree un hijo para
ejecutarlas. Lo que necesitamos es el comando 'source' o su equivalente
'.'. Son comandos internos del shell y hacen justo lo que queremos. Así
que yo creo que si ejecutas
source ./script (o source script)
o
. ./script (o . script)
la cosa debería funcionar.
Y espero que funcione. Suerte.
-- Eloy
_____________________________________________________________________
---- Eloy Rafael Sanz Tapia -- ersanz@uco.es -- ma1satae@uco.es -----
------------------ http://www.uco.es/~ma1satae ----------------------
----------- GPG ID: 190169A0 / finger eloy@rabinf50.uco.es ----------
Córdoba _ España _______________ Debian 2.2 GNU/Linux 2.2.16 rabinf50
Reply to: