next up previous
Next: Comandos del shell Up: El shell Previous: El shell

Variables

Hay dos tipos de variables, las variables del shell, que son variables locales a cada shell, y que se pierden cuando se ejecuta un nuevo shell (por ejemplo, si se llama a un script dentro de un shell, o a cualquier otro programa), y las variables de entorno, que se pasan a cada uno de los programas que se ejecutan desde el shell.

Las primeras variables se asignan con el comando del shell set: set kk=7 crea la variable kk y le asigna el valor 7. Este valor se puede usar en cualquier comando, precediéndolo del signo $, por ejemplo:

(kal-el) ~> set diramigo=/disk02/gente/victor/
bash~\$  diramigo=/disk02/gente/victor/ # en bash
(kal-el) ~> ls \$diramigo
#*mail*#a04922#                PRESTADO.DAT
#*mail*#a16760#                RMAIL
Las variables existentes y su valor se imprimen al escribir set sin argumentos.
(kal-el) ~> set
addsuffix       
[... mas variables ... ]
kk      7
, aunque tambien se puede imprimir el valor de una variable con echo $kk. Una de estas variables es el prompt, que al igual que en MSDOS, indica qué se escribe antes del comando del usuario. Cada shell tiene opciones diferentes, pero en tcsh las diferentes opciones van precedidas de un porcentaje; de esta forma,
 set prompt=(%B%M%b) %~>\end{verbatim} crea un prompt con
colorines como el que suele usar el autor, con el nombre de
  m\'aquina y esas cosas. Para ver las demas opciones del prompt
  en {\tt tcsh}, consultar la pagina de manual (que para eso est\'a).

Las variables de entorno se asignan con {\tt setenv} (de {\em set
  environment} en los shell que descienden del {\tt csh}, y convencionalmente est\'an escritas en may\'usculas:\begin{verbatim}
(kal-el) ~> setenv KK 7
bash~> export KK=7 # En bash y otros relacionados con el Bourne shell
(kal-el) ~> setenv
[..]
USER=jmerelo
WINDOWID=50331649
KK=7
. Estas variables se usan a veces para definir directorios que usan los programas, o cualquier otra información: por ejemplo, setenv DISPLAY ei696969:0 les indica a todos los programas que usan el entorno XWindows que la pantalla en la cual van a presentar la información es otro ordenador de la red denominado ei696969. Las páginas de manual suelen indicar al final que variables de entorno usa cada programa; ver, por ejemplo, la página de manual de man. Otra variable que se suele usar es cwd, el directorio actual, sobre todo en prompts y demás. Por supuesto, eh bash es diferente, para joder. Asi que estoy por no decir más diferencias; que cada consulte la página de manual correspondiente, y punto pelotas.


next up previous
Next: Comandos del shell Up: El shell Previous: El shell
Juan Julian Merelo Guervos
1999-12-14