next up previous
Next: El Bourne Shell Up: Lo común a todos Previous: Variables del Shell

Terminando el shell

En todos los shells existe un comando que termina tanto los scripts como el shell (ya que una sesión interactiva con un shell puede considerarse como un script muy complejo, que se crea a la vez que se ejecuta el anterio comando). Este es:
exit número
Este comando termina todo aquello que lo ejecuta y retorna un código de salida que puede ser obtenido normalmente por un shell padre. En realidad casi todos los programas que podemos correr en UNIX devuelven códigos de salida que nos indican si estos se han ejecutado con éxito (devolviendo normalmente un 0). Esto posibilita las ejecuciones condicionales antes vistas. En el C shell, la variable $status contiene el valor retornado por el anterior comando ejecutado. Ejemplo:



width 3pt
width .3pt415ptiron% date (ejecutamos un comando con sin error)
Wed Apr 26 16:02:26 WET DST 1995
iron% echo $status (comprobamos que no ha habido error)
0
iron% cc prog.c (compilamos un programa que no existe)
cpp: prog.c: No such file or directory
iron% echo $status (este es el código de salida cuando no es posible compilar)
2
iron% awk (llamamos a la utilidad de búsqueda de cadenas sin parámetros)
awk: Usage: awk [-f source] [-Fc] ['cmds'] [variable=value ...] [file ...]
iron% echo $status (pero al no haber trabajado, devuelve su código de error)
2
iron%
width .3pt
depth .3pt width -3pt

De la misma forma, el comando exit puede retornar un código cuando es ejecutado. Ejemplo:



width 3pt
width .3pt415ptgogh: > cat script_exit.csh (presentamos un pequeño script)
echo Este script retorna un código de salida de 3
exit 3 (que termina retornando el código de salida 3)
gogh: > chmod +x script_exit.csh (asegurémonos de que es ejecutable)
gogh: > script_exit.csh (ejecutamos el script)
Este script retorna un código de salida de 3 (salida del script)
gogh: > echo $status (vemos el estado de salida)
3
width .3pt
depth .3pt width -3pt


next up previous
Next: El Bourne Shell Up: Lo común a todos Previous: Variables del Shell
Vicente González Ruiz
1998-07-13