🖥️ Bash Scripting
Variables, bucles, funciones, scripts completos
🎯 Modo Examen
Selecciona ejercicios aleatorios con temporizador
Nivel 1 — Básico
Variables en Bash
Aprende a declarar y usar variables en Bash correctamente.
Corregir script con errores
Identifica y corrige los errores de sintaxis en este script Bash.
Expandir una variable
Muestra el valor de una variable con echo. · ~2min
Comillas simples vs dobles
Diferencia entre comillas simples y dobles en la expansión. · ~2min
Leer entrada con read
Captura lo que escribe el usuario con read. · ~3min
Asignación sin espacios
Corrige el error clásico de espacios en la asignación. · ~2min
Concatenar variables en texto
Construye una cadena combinando texto y variables. · ~3min
¿Qué es $?
El código de salida del último comando. · ~2min
El shebang
Indica el intérprete del script. · ~2min
Longitud de una cadena
Obtén el número de caracteres de una variable. · ~3min
Aritmética con $(( ))
Suma dos números con expansión aritmética. · ~3min
Expandir variable dentro de un texto
Forma correcta de incrustar una variable en un mensaje. · ~2min
Usuario actual
Muestra el nombre del usuario que ejecuta el script. · ~2min
Primer argumento del script
Accede al primer parámetro recibido. · ~2min
Ordenar un script básico
Coloca las líneas en el orden correcto. · ~3min
Nivel 2 — Intermedio
Bucle for con rango
Usa la sintaxis de rango {inicio..fin} en bucles for.
Script de backup
Escribe un script completo de copia de seguridad.
Bucle for sobre una lista
Recorre una lista de palabras con for. · ~4min
Incrementar un contador
Completa el incremento de un while. · ~4min
Contar argumentos
Muestra cuántos argumentos recibe el script. · ~4min
Recorrer todos los argumentos
Itera sobre $@ con un for. · ~4min
Corregir un while roto
Faltan do y la aritmética está mal. · ~5min
Comparación numérica
Compara números con el operador correcto. · ~4min
[ ] vs [[ ]]
Ventajas de los dobles corchetes. · ~3min
Bucle until
Repite hasta que la condición sea cierta. · ~4min
Sumar del 1 al 5
Acumula una suma dentro de un bucle. · ~6min
Declarar un array
Crea un array indexado en Bash. · ~4min
Recorrer un array
Itera sobre todos los elementos. · ~4min
Comprobar si un fichero existe
Usa el test -f para ficheros. · ~5min
Completar un case
Añade el comodín y el cierre del case. · ~4min
Corregir for con paréntesis
En Bash el for usa 'in', no paréntesis. · ~5min
Sumar dos argumentos
Aritmética con argumentos posicionales. · ~5min
Valor por defecto
Asigna un valor si la variable está vacía. · ~5min
$@ frente a $*
Diferencia entre las dos formas con comillas. · ~3min
¿Qué imprime el bucle?
Razona la salida de un for con aritmética. · ~3min
Nivel 3 — Avanzado
Función con parámetros
Crea funciones en Bash que reciban parámetros.
Función con código de retorno
Una función que devuelve 0 o 1 según el caso. · ~8min
Leer un fichero línea a línea
Patrón while read sobre un fichero. · ~8min
Menú interactivo con case
Bucle infinito con menú y opción de salir. · ~12min
Variables locales en funciones
Evita modificar una variable global por accidente. · ~7min
Validar argumento obligatorio
Comprueba que se pasó un argumento y, si no, sale con error. · ~8min
Array asociativo
Usa declare -A para mapas clave-valor. · ~9min
Contar coincidencias
Cuenta líneas que cumplen un patrón. · ~6min
Ordenar un script con función
Reconstruye un script que define y llama una función. · ~6min
Capturar señales con trap
Reacciona a SIGINT (Ctrl+C). · ~9min
Comprobar permisos de root
Sale si no se ejecuta como root. · ~8min
Redirección dentro de un bucle
Añade cada línea a un fichero de log. · ~6min
Recorrer ficheros por patrón
Itera sobre los .txt del directorio. · ~6min
Salida de un while
Predice la última línea de un bucle. · ~4min
Sustitución en una cadena
Reemplaza parte de una variable. · ~7min
break y continue
Controla el flujo de un bucle. · ~9min
Mayor de dos números
Compara dos argumentos y muestra el mayor. · ~8min
Corregir varios errores
Asignación, comparación numérica y then. · ~8min
Función con parámetro por defecto
Calcula una potencia con exponente opcional. · ~10min
Factorial recursivo
Una función que se llama a sí misma. · ~12min
Nivel 4 — Pro
PRO: Backup con validación y log
Script real de backup con fecha, compresión y registro. · ~18min
PRO: Control de servicio con case
Script tipo init con start/stop/status y logging. · ~18min
PRO: Alta de usuario segura
Crea un usuario comprobando root y duplicados. · ~18min
PRO: Rotador de logs
Archiva, comprime y reinicia un log. · ~16min
PRO: Informe del sistema
Genera un informe del estado del servidor. · ~18min