Ejercicios prácticos de comandos y scripts en Bash: EXAMEN1 y EXAMEN2
Resumen
El documento recoge ejercicios prácticos de la terminal Linux con comandos básicos como ls, grep, rm y las redirecciones de errores, y explica cómo identificar directorios en un listado. Además, incluye dos procedimientos de script en Bash: EXAMEN1, que comprueba la existencia del directorio SOM y lo crea si no existe, y EXAMEN2, que valida el número de argumentos y gestiona la adición de un valor al fichero claves.txt.
Puntos clave
- ls -a .. muestra los ficheros ocultos del directorio padre del actual.
- En un listado con ll, una 'd' al inicio de la línea indica que es un directorio.
- ls -lR | more lista el contenido de forma detallada y recursiva, paginando la salida.
- rm AW 2> error intenta eliminar 'AW' y redirige los errores al archivo 'error'.
- grep 'hola' archivo.txt muestra las líneas del archivo que contienen la palabra 'hola'.
- EXAMEN1 usa 'if [ ! -d "$HOME/SOM" ]' para comprobar si el directorio existe y crearlo en caso contrario.
- EXAMEN2 comprueba con '$# -ne 2' que se pasan exactamente dos argumentos y muestra sus valores.
Comandos Básicos de Terminal
- Visualiza los ficheros ocultos del directorio padre del actual:
ls -a .. - ¿Cómo identificar el tipo de archivo con el comando
ll? Si aparece 'd' al comienzo, se trata de un directorio. - ¿Qué hace el comando
ls -lR | more? Lista el contenido de forma detallada y recursiva, paginando la salida. - ¿Qué hace el comando
rm AW 2> error? Intenta eliminar el archivo 'AW' y redirige los posibles errores de ejecución al archivo 'error'. - ¿Cómo mostrar todas las líneas de un archivo de texto que contengan la palabra 'hola'?
grep 'hola' archivo.txt
Automatización con Scripts en Bash
Procedimiento EXAMEN1: Verificación de Directorios
Crea un procedimiento llamado EXAMEN1 que verifique si existe el directorio SOM en la carpeta actual. Si existe, la salida será: “Directorio ya existe por eso no lo creo”. Si no existe, la salida será: “Directorio no existía. Lo he tenido que crear yo”.
vi inicializar
if [ ! -d "$HOME/SOM" ]; then
echo "Directorio no existía. Lo he tenido que crear yo"
mkdir "$HOME/SOM"
else
echo "Directorio ya existe por eso no lo creo"
fi
# 6.1 inicializar. FINProcedimiento EXAMEN2: Gestión de Argumentos
Crea un procedimiento llamado EXAMEN2 cuyo objetivo es comprobar que, cuando se invoca el proceso, se pasan dos argumentos. Si no se pasan, la salida será: “Ainsss, hemos dicho que dos argumentos”. Si se pasan, mostrará los valores de ambos.
vi agregar
if [ $# -ne 2 ]; then
echo "Ainsss, hemos dicho que dos argumentos"
else
echo "El valor del primer argumento es $1"
echo "El valor del segundo argumento es $2"
grep "$1" "$HOME/bin/claves.txt" > fichero
if [ ! -s fichero ]; then
echo "$1" >> "$HOME/bin/claves.txt"
echo "ARGUMENTO AÑADIDO"
else
echo "ARGUMENTO YA EXISTENTE"
fi
fiDescargar
PDF Word HTMLPreguntas frecuentes
¿Qué hace el comando ls -a ..?
Muestra los ficheros ocultos del directorio padre del directorio actual.
¿Cómo se identifica un directorio con el comando ll?
Si la línea del listado empieza por 'd', se trata de un directorio.
¿Qué hace rm AW 2> error?
Intenta eliminar el archivo 'AW' y redirige los posibles errores de ejecución al archivo 'error'.
Ponte a prueba
Tarjetas de repaso
Pulsa una tarjeta para ver la respuesta.
Test
Preguntas generadas con IA a partir del documento: comprueba las respuestas con el texto.