Casidiablo

 

Variables de entorno

Me he cambiado de host y de blog (ahora estoy con Wordress), en segundos serás "teletransportado" al nuevo servidor (casidiablo.net). Todo gracias a ustedes que me leen y me enlazan. Si no quieres esperar o no fuiste redireccionado haz click aquí.

Normalmente los programas utilizan variables para poder llevar a cabo determinadas acciones. Por ejemplo los editores como vi o emacs necesitan saber en que tipo de shell se etán ejecutando. Está información podría ser cargada mediante el uso de argumentos al momento de ejecutar un comando, pero dicha tarea sería más que tediosa para el usuario, ya que se tendría que hacer cada vez que se ejecute el comando.


Los shell solucionan estos problemas con las variables de entorno. Una variable de entorno es simplemente un par nombre/valor. El shell hace una lista de variables y las mantiene disponibles para cualquier programa que se ejecute sobre él.


Existen dos tipos de variables: las variables normales de shell (variables locales), y las variables de entorno (variables globales).


Para establecer una variable de entorno se utiliza el comando:


export NOMBRE=valor


Si el valor de la variable incluye espacios en blanco es posible encerrar dicho valor entre comillas dobles o sencillas, para evitar conflictos. Por ejemplo:


export JAVAPATH="/usr/lib/programas instalados/maquina virtual"


También es posible agregar nuevos valores a una variable ya existente, para ello podemos utilizar la siguiente sintaxis:


export JAVAPATH="$JAVAPATH otro_valor"


Esto agrega la cadena "otro_valor" a la variable JAVAPATH. Puedes ver el valor de una variable con el comando echo, así:


echo $PATH


También es posible ver las variables disponibles de una manera sencilla. Digitamos el comando "echo $" y después pulsamos dos veces la tacla TAB. Verás algo como esto:


ubuntu@ubuntu:~$ echo $
$_                        $GDM_XSERVER_LOCATION     $OSTYPE
$BASH                     $GNOME_DESKTOP_SESSION_ID  $PATH
$bash205                  $GNOME_KEYRING_SOCKET     $PIPESTATUS
$bash205b                 $GROUPS                   $PPID
$bash3                    $GTK_RC_FILES             $PROMPT_COMMAND
$BASH_ARGC                $HISTCMD                  $PS1
$BASH_ARGV                $HISTCONTROL              $PS2
$BASH_COMMAND             $HISTFILE                 $PS4
$BASH_COMPLETION          $HISTFILESIZE             $PWD
$BASH_COMPLETION_DIR      $HISTSIZE                 $RANDOM
$BASH_LINENO              $HOME                     $RUNNING_UNDER_GDM
$BASH_SOURCE              $HOSTNAME                 $SECONDS
$BASH_SUBSHELL            $HOSTTYPE                 $SESSION_MANAGER
$BASH_VERSINFO            $IFS                      $SHELL
$BASH_VERSION             $LANG                     $SHELLOPTS
$COLORTERM                $LESSCLOSE                $SHLVL
$COLUMNS                  $LESSOPEN                 $SSH_AGENT_PID
$COMP_WORDBREAKS          $LINENO                   $SSH_AUTH_SOCK
$DBUS_SESSION_BUS_ADDRESS $LINES                    $TERM
$DESKTOP_SESSION          $LOGNAME                  $UID
$DESKTOP_STARTUP_ID       $LS_COLORS                $USER
$DIRSTACK                 $MACHTYPE                 $USERNAME
$DISPLAY                  $MAILCHECK                $WINDOWID
$EUID                     $OPTERR                   $XAUTHORITY
$GDMSESSION               $OPTIND


Variables utilizadas por el shell


Hablemos de algunas de las variables más utilizadas por el shell:


DISPLAY:Esta variable la leen los programas X para saber donde desplegar su salida. Ojo!!! con programas X me refiero a programas gráficos, nada de porno, ehh: PERVERTIDO!!! Por lo general se establece en ":0.0", lo que significa que la salida se desplegará en la primera terminal gráfica (virtual) del equipo HOST.


PATH: Contiene una lista de nombres de directorios separados por el signo dos puntos ":". Cuando digitamos el nombre de algún comando, el shell busca entre dichos directorios un programa con dicho nombre. Si no lo encuentra aparece algo como esto: "bash: killbillgates: command not found".


TERM: El tipo de terminal o emulación del terminal. Los programas como los editores deben saber sobre qué tipo de terminal se están ejecutando para poder manipular correctamente la pantalla y el cursor.


HOME: El directorio personal del usuario actual.


También existen variables que el shell mismo establece, por ejemplo la variable PWD es actualizada constantemente por el shell y guarda el último directorio referenciado por el comando cd.


Etiquetas: ,