Programación Bourne Shell
Buen material en la web está disponible en la página de
Estaban Manchado, y también el material de Katja
Socher
- Caracteres especiales
- Algunas variables globales en shell
$# : Número de parámetros de la línea de
comandos
$n : Parámetro n-ésimo, $0 es el nombre del
script.
$? : Estado de término de último comando, Ojo si el
comando es exitoso se retorna 0, en otro caso en no 0. Las expresiones
consultan normalmente si el comando es exitoso o no. No confundirse con
la lógica de C donde 0 es falso.
$* : lista de argumentos de comando empezando por $1
$! : pid del último proceso ejecutado.
$$ : pid del proceso actual.
- Ex1 :
Este programa envía un archivo a un grupo de usuarios. El primer
atributo es el nombre de la carta, seguido por la lista de los
receptores del correo. - Ex2
:
Este programa nos informa cuando un usuario específico se ha
logeado en la máquina. Tiene un argumento, la cuenta por la que
se espera. - Ex3 :
Este programa entrega la lista de usuario actualmente logeados,
ordenada por sus login. Este usa el archivo script sortout.sh - Ex4 :
Este programa imprime el número de archivos en un
subárbol. El único argumento es la raiz del árbol
donde se buscará. - Ex5
:
Este programa crea un archivo de respaldo para los programas C.
- Ex6 :
Este programa trastrea el directorio actual recursivamente y para cada
archivo pide al usuario un comando y luego lo ejecuta.
- Ex7 :
Este ejemplo lista el nombre de usuario y el real de cada cuenta en
electrónica. Permite mostrar el uso de IFS para definir otro
caracter como separador.
Por qué no
debemos fijar permisos de super usuario a en script
(setuid).
Desafio: ¿Podemos entender el script
para verificar el sitio
usado para acualizar Lunix?