Curso sobre comandos de linux
🎯 Objetivo del módulo Entender cómo funciona el entorno de la shell, usar variables, alias, el PATH, y empezar a automatizar tareas con scripts.
📌 Idea clave No es ejecutar comandos. Es hacer que Linux trabaje para ti.
🧠 Conceptos fundamentales
🐚 Shell
Programa que interpreta comandos (Bash, Zsh…).
🌍 Entorno
Conjunto de variables que afectan al comportamiento del sistema y programas.
🤖 Automatización
Ejecutar tareas sin intervención humana.
🗂️ Contenidos del módulo
- Variables de entorno
envexportPATH- Alias
- Scripts bash
xargs
🔸 Variables en Bash
🧾 Crear una variable
1nombre="Ángel"
⚠️ Sin espacios.
🧾 Usar una variable
1echo $nombre
🧠 Variables importantes del sistema
1echo $HOME 2echo $USER 3echo $PATH
| Variable | Significado |
|---|---|
HOME | directorio personal |
USER | usuario |
PATH | rutas de ejecutables |
🔸 env
📌 Categoría
Entorno
🧾 Descripción
Muestra todas las variables de entorno.
🧪 Ejemplo
1env
📌 Muy usado para debugging.
🔸 export
📌 Categoría
Entorno
🧾 Descripción
Hace que una variable esté disponible para procesos hijos.
🧪 Ejemplo
1export JAVA_HOME=/usr/lib/jvm/java-17
📌 Sin export, solo existe en la shell actual.
🔸 PATH ⭐⭐⭐⭐⭐
📌 Categoría
Entorno / ejecución
🧾 Descripción
Lista de rutas donde el sistema busca ejecutables.
🧪 Ver el PATH
1echo $PATH
Salida típica:
/usr/local/bin:/usr/bin:/bin
🧪 Añadir al PATH (temporal)
1export PATH=$PATH:/home/angel/scripts
📌 Permite ejecutar scripts sin poner la ruta.
🔸 Alias
📌 Categoría
Productividad
🧾 Descripción
Atajos para comandos largos.
🧪 Crear alias
1alias ll="ls -la"
🧪 Usar
1ll
🧪 Eliminar
1unalias ll
🧠 Permanentes
Añadirlos a:
1~/.bashrc
🔸 Scripts Bash ⭐⭐⭐⭐⭐
📌 Categoría
Automatización
🧾 ¿Qué es?
Un archivo con comandos ejecutables.
🧾 Script básico
1#!/bin/bash 2echo "Hola mundo"
🧪 Guardar como
1hola.sh
🧪 Dar permisos
1chmod +x hola.sh
🧪 Ejecutar
1./hola.sh
🧠 Variables en scripts
1#!/bin/bash 2echo "Hola $USER"
🧠 Argumentos
1#!/bin/bash 2echo "Primer argumento: $1"
Ejecutar:
1./script.sh archivo.txt
🔸 xargs 🔥
📌 Categoría
Procesamiento avanzado
🧾 Descripción
Convierte la salida en argumentos de otro comando.
🧪 Ejemplo simple
1echo "archivo1 archivo2" | xargs rm
🧪 Ejemplo real
1find . -name "*.tmp" | xargs rm
📌 Muy potente, pero peligroso si no se prueba antes.
🧠 Casos reales MUY comunes
🤖 Automatizar backup
1tar -czvf backup.tar.gz /home
🤖 Alias productivos
1alias gs="git status" 2alias dc="docker compose"
🤖 Scripts de despliegue
1./deploy.sh
⚠️ Errores comunes
- ❌ Espacios en variables
- ❌ Olvidar permisos de ejecución
- ❌ Romper el PATH
- ❌ Usar
xargssin probar
🧠 Buenas prácticas
- ✔ Usa alias para productividad
- ✔ Usa scripts para repetir tareas
- ✔ Documenta tus scripts
- ✔ Prueba antes de automatizar
📌 Resumen
- ✔ Controlas el entorno
- ✔ Automatizas tareas
- ✔ Usas scripts
- ✔ Ya piensas como DevOps