¿Ya dominas lo básico? Un curso estructurado de shell scripting es la vía rápida para dar el salto.
Ver cursos de shell scripting en UdemyEnlace de afiliado. No te cuesta nada extra.
- 01Preparar el entorno (lo que necesitas)
- 02Tu primer guion (echo)
- 03Usar variables
- 04Argumentos de la línea de órdenes ($1, $2 ...)
- 05Condicionales (la sentencia if)
- 06Repetir (el bucle for)
- 07Repetir (el bucle while)
- 08Escribir tu propia función
- 09Trabajar con arrays
- 10Sustitución de comandos ($())
- 11Trabajar con texto (expansión de parámetros)
- 12Leer de la entrada estándar (read)
- 13Estado de salida y && / ||
- 14Tuberías y redirección
- 15La sentencia case
- 16Aritmética ($(( )))
- 17Lo básico de grep, sed y awk
- 18Comprobación de argumentos y manejo de errores
- 19Valores devueltos por funciones y códigos de salida
- 20[Proyecto] Construye un contador de registros
Condicionales (la sentencia if)
En esta lección harás que el guion tome caminos distintos según una condición.
La forma es if [ condición ]; then ... fi. Para comparar números se usan -eq, -ne, -lt, -le, -gt y -ge. Fíjate en que el bloque se cierra con fi, que es if al revés.
El código de ejemplo muestra un mensaje distinto según la nota.
Aquí hay una trampa muy propia de shell: [ es un comando, no un signo de puntuación. Por eso tiene que haber espacios a ambos lados; escribir [$score -ge 80] sin espacios da un error incomprensible. Y por eso los operadores son -ge en vez de >=: dentro de los corchetes, un > sería una redirección a un archivo.
Para comparar textos los operadores son = y !=, distintos de los numéricos. En bash conviene además usar [[ ... ]] con dobles corchetes: es más seguro con variables vacías o con espacios y admite comparaciones con patrones.
🧪 Este sitio no puede compilar ni ejecutar Shell Script directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).
🔗 El mismo tema en otros lenguajes
Mira cómo se escribe lo mismo en otro lenguaje.
