next up previous
Next: Accediendo a las variables Up: Cuándo el C shell Previous: Cuándo el C shell

Manipulación de las variables

La creación de las variables se realiza de la siguiente forma:



width 3pt
width .3pt415pt# set Nombre=Vicente (creamos una variable local llamada Nombre)
# set Apellidos='Gonzalez Ruiz' (otra variable local)
# echo $Nombre $Apellidos (comprobamos como están las variables)
Vicente Gonzalez Ruiz  
# csh (invocamos un sub-shell tipo C)
# echo $Nombre $Apellidos (las variables ?)
Nombre: Undefined variable (no están definidas !, lógico, son locales)
# exit (abandonamos el sub-shell)
exit
# echo $Nombre $Apellidos (volvemos a preguntar por las variables)
Vicente Gonzalez Ruiz (son locales a este shell)
# setenv Nombre Vicente (ahora declaramos la variable de entorno)
# setenv Apellidos 'Gonzalez Ruiz' (las locales son destruidas)
# echo $Nombre $Apellidos (pues tienen el mismo nombre)
Vicente Gonzalez Ruiz (contenido de las variables de enntorno)
# csh (invocamos el C Shell)
# echo $Nombre $Apellidos (preguntamos por las variables de entorno)
Vicente Gonzalez Ruiz (y siguen estando activas en el sub-shell)
# exit
exit
# echo $Nombre $Apellidos (y también en el shell de partida)
Vicente Gonzalez Ruiz
#
width .3pt
depth .3pt width -3pt
Como hemos podido apreciar, el C Shell soporta variables locales y de entorno. Las locales pueden tener 1 o o varias asignaciones simultánemamente (una lista de valores) mientras que las de entorno no.

Para asignar un valor simple a una variable local se utiliza el comando:

set {variable[=valor]}*
Si no argumentamos (escribimos set y pulsamos enter ) se muestra el contenido de todas las variables locales definidas hasta ese momento. Si no damos valor, borramos (no destruimos) la variable. Ejemplos:



width 3pt
width .3pt415pt33 % set flag (borramos la variable local flag)
34 % echo $flag (comprobamos que esta borrada)
35 % set color = red (creamos una variable color que contiene red)
36 % echo $color (vemos el contenido de color)
red
37 % set name = Vicente Gonzalez (creamos una variable no muy bien)
38 % echo $name
Vicente
39 % set name = 'Vicente Gonzalez' (ahora si la creamos bien)
40 % echo $name
Vicente Gonzalez
41 % set (listamos todas las variables locales)
argv ()
cdpath              /home/guess
color               red
name                Vicente Gonzalez
term                vt100
user                guess
42 %
width .3pt
depth .3pt width -3pt

next up previous
Next: Accediendo a las variables Up: Cuándo el C shell Previous: Cuándo el C shell
Vicente González Ruiz
1998-07-13