Bash
Aprende scripting en Bash, desde variables hasta scripts robustos listos para producción. Bucles, arrays, traps, set -euo pipefail y un proyecto final de arranque de servidor.
12 lecciones, en orden
- 120 min
Qué es Bash
Te damos la bienvenida. Si nunca has abierto una terminal en tu vida, estás en el sitio adecuado. Antes de escribir un solo comando, vamos a dedicar...
Shell vs terminalBash vs sh vs zshInteractive shell vs scriptWhere Bash fits in DevOps - 225 min
Shebang y tu primer script
Si la palabra "script" todavía te suena a algo que solo escriben los programadores de verdad, tranquilo. Un script no es más que un archivo de texto...
Shebang#!/usr/bin/env bashChmod +x./script.sh vs bash script.shExit codes - 325 min
Variables y entrecomillado
Si nunca has usado una variable, tranquilo. Es una de las ideas más sencillas de todo el curso, y la versión de Bash es de las más simples que...
Variable assignmentDouble quotes vs single quotes${var} bracesCommand substitution $(...) - 430 min
Condicionales y pruebas
Todos los scripts que has escrito hasta ahora ejecutan las mismas líneas pase lo que pase. Los scripts de verdad necesitan tomar decisiones: «haz...
If statement[[ ]] testsString testsFile tests -f -d -e&& and ||Case statement - 525 min
Bucles
Hasta ahora, todos los scripts que has escrito ejecutan cada línea exactamente una vez, de arriba abajo. Eso está bien para scripts cortos, pero el...
For loopWhile loopUntil loopFor f in *.txt globbingC-style for loopBreak and continue - 625 min
Funciones
A estas alturas tus scripts empiezan a repetirse. Puede que registres un mensaje con marca de tiempo en tres sitios distintos, o que compruebes si un...
Function definitionPositional args $1 $@ $#Return for exit codesEcho for outputLocal variables - 725 min
Arreglos
Hasta ahora, una variable ha guardado un valor. name="Ada" guarda una cadena. Si quisieras guardar tres nombres, necesitarías tres variables...
Indexed arrays${arr[@]}${#arr[@]} lengthAssociative arrays declare -AIterating arrays - 825 min
Expansión de cadenas y aritmética
Te vas a encontrar constantemente con una variable que contiene casi, pero no exactamente, lo que necesitas. Una ruta completa cuando solo quieres el...
${var#prefix}${var%suffix}${var//old/new}$(( arith ))Printf formatting - 925 min
Redirección de E/S y pipes
Todos los comandos que ejecutas en Bash están conectados, por debajo, a tres canales distintos, te des cuenta o no. Piensa en una máquina...
>>><2>2>&1&>+3 - 1030 min
Manejo de errores y traps
Todos los scripts que has escrito hasta ahora dan por hecho que las cosas salen bien. Un comando que no encuentra un archivo, un directorio que no...
Set -eSet -uSet -o pipefailTrap on EXITTrap on ERRCleanup functions - 1125 min
Depuración y buenas prácticas
Tarde o temprano un script que escribiste hará algo que no le pediste. Borrará el archivo equivocado, se saltará el bucle que dabas por seguro o...
Bash -xSet -xShellcheckSafe quotingNever parse ls[[ vs [+1 - 1260 min
Proyecto final: Script de arranque del servidor
Un servidor recién creado es una máquina sin nada. Alguien tiene que instalar el servidor web, crear la cuenta con la que vas a entrar, dejar tu...
Idempotent provisioningInstalling packagesCreating usersSSH key setupSystemd timersLogging+2
Aprende Bash en tu idioma
Cada lección, examen y respuesta del tutor aparece en tu idioma. El tutor de IA responde en el idioma en que le hablas.
Roles that use Bash
See how hiring teams interview engineers on Bash, in production-like environments.
DevOps Engineer
Hire DevOps engineers who actually ship. Run live or take-home interviews in production-like Linux environments with Docker, Kubernetes, Terraform and CI/CD. See how they debug, automate, and work alongside AI.
See the interviewSite Reliability Engineer (SRE)
Hire SREs who actually run production. Live workspaces with metrics, logs, traces and a service that is starting to misbehave. We record every keystroke.
See the interviewInfrastructure Engineer
Hire infrastructure engineers who design systems your team can rely on. Interview them in real workspaces with Terraform, Ansible, cloud APIs and live failure scenarios.
See the interview