Av de la Arboleda, s/n, Av.
Arboleda, 21440 Lepe, Huelva
Ciclo Formativo de Grado Superior de Desarrollo de Aplicaciones Web (DAW)
Módulo Profesional de SISTEMAS INFORMÁTICOS
Unidad Didáctica 8 – Shell Script - Linux
Realiza los siguientes scripts:
Instrucciones generales:
- Deberán funcionar correctamente conforme a lo que pide cada enunciado.
- Incluye mensajes adecuados, bien estructurados, con amplitud de líneas en blanco para una mejor
visualización. Incluye también nombres de ficheros, directorios, etc., dentro de los mensajes para
que queden mejor visualmente.
- Comenta el código para que se pueda seguir claramente.
Resolver con la estructura de control “while”:
1. Escribe un script que realice un contador de 1 a 10, mostrando por pantalla un breve mensaje
y la cuenta.
#!/bin/bash
# Inicializamos el contador en 1
contador=1
# Usamos un bucle while para contar de 1 a 10
while [ $contador -le 10 ]
do
echo "Cuenta: $contador"
contador=$((contador + 1)) # Aumentamos el contador en 1
done
2. Diseña un script que pida al usuario que introduzca contraseña. La seguirá pidiendo
indefinidamente hasta que no acierte con la que hemos establecido (por ejemplo:
clave=”secreta”).
#!/bin/bash
# Establecemos la contraseña correcta
clave="secreta"
# Pedimos la contraseña al usuario
while true
Av de la Arboleda, s/n, Av. Arboleda, 21440 Lepe, Huelva
do
read -p "Introduce la contraseña: " entrada
# Comparamos la entrada con la clave
if [ "$entrada" == "$clave" ]; then
echo "Contraseña correcta."
break # Salimos del bucle si la contraseña es correcta
else
echo "Contraseña incorrecta, intenta de nuevo."
fi
done
3. Escribe un script que realice una cuenta atrás del 10 al 1, mostrando por pantalla un breve
mensaje y la cuenta y un mensaje final de “despegue”.
#!/bin/bash
# Inicializamos el contador en 10
contador=10
# Usamos un bucle while para hacer la cuenta atrás
while [ $contador -ge 1 ]
do
echo "Cuenta atrás: $contador"
contador=$((contador - 1)) # Disminuimos el contador en 1
done
# Mensaje final
echo "¡Despegue!"
4. Crea un script que lea nombres por teclado y los muestre por pantalla junto con un pequeño
saludo, hasta que el usuario escriba “salir”.
#!/bin/bash
# Bucle para pedir nombres hasta que se introduzca "salir"
while true
do
Av de la Arboleda, s/n, Av. Arboleda, 21440 Lepe, Huelva
read -p "Introduce tu nombre (escribe 'salir' para terminar): " nombre
# Verificamos si el nombre es "salir"
if [ "$nombre" == "salir" ]; then
echo "Saliendo..."
break # Salimos del bucle
else
echo "Hola, $nombre!" # Mostramos el saludo
fi
done
5. Crea un script que pida números por teclado (uno, luego otro, luego otro, y así
sucesivamente) hasta que el usuario introduzca un 0 y realice la suma de todos los números
introducidos.
#!/bin/bash
# Inicializamos la variable suma
suma=0
# Bucle para pedir números hasta que se introduzca 0
while true
do
read -p "Introduce un número (0 para terminar): " numero
# Si el número es 0, salimos del bucle
if [ $numero -eq 0 ]; then
break
fi
# Sumamos el número introducido
suma=$((suma + numero))
done
# Mostramos el resultado final
Av de la Arboleda, s/n, Av. Arboleda, 21440 Lepe, Huelva
echo "La suma total es: $suma"