
Tabla de contenidosMostrar / ocultar
¿Qué son Linux y una shell?
Linux es una familia de sistemas operativos libres y de código abierto de tipo Unix, construidos en torno al núcleo Linux (Linux kernel). Es el sistema operativo dominante en el mundo de los servidores web, los superordenadores, la infraestructura en la nube, los contenedores (Docker, Kubernetes) y los dispositivos móviles (a través de Android).
Una shell (intérprete de órdenes) es la interfaz de texto que permite a los usuarios y a los programadores comunicarse directamente con el núcleo del sistema operativo mediante instrucciones de texto. El intérprete más extendido en las distribuciones GNU/Linux es Bash (Bourne Again SHell).
¿Cuándo y quién los creó?
- El núcleo Linux: Publicado el 17 de septiembre de 1991 por el estudiante finlandés Linus Torvalds como proyecto personal en la Universidad de Helsinki. Combinado con las utilidades del proyecto GNU (iniciado por Richard Stallman en 1983), dio lugar al sistema completo conocido como GNU/Linux.
- Shell Bash: Desarrollada en 1989 por Brian Fox para el Proyecto GNU como reemplazo de código libre de la Bourne Shell original (
sh, creada por Stephen Bourne en 1977).
¿Para qué se utiliza?
La administración de sistemas Linux y el dominio de la línea de comandos (CLI) son competencias esenciales para cualquier ingeniero de software:
- Gestión de servidores de producción: Conexión remota y segura mediante SSH para monitorizar recursos, gestionar servicios del sistema (con
systemd), configurar cortafuegos (ufw,iptables) y gestionar certificados SSL/TLS. - Automatización de tareas: Creación de scripts en Bash para copias de seguridad periódicas (mediante
cron), rotación de registros de logs y mantenimiento de archivos. - Pipelines de CI/CD: Las máquinas virtuales que ejecutan nuestras pruebas y despliegan código en plataformas como GitHub Actions son servidores Ubuntu Linux que se orquestan íntegramente mediante comandos de terminal.
- Manipulación masiva de datos y texto: Herramientas clásicas de procesamiento de flujos como
grep,sed,awk,cut,sortyuniq.
La filosofía Unix y las tuberías (pipes)
Uno de los principios más elegantes de Linux es la filosofía Unix:
«Escribe programas que hagan una sola cosa y la hagan muy bien. Escribe programas que colaboren entre sí. Escribe programas que gestionen flujos de texto, porque el texto es la interfaz universal».
Este principio se materializa con el operador de tubería (|), que redirige la salida estándar (stdout) de un programa a la entrada estándar (stdin) del siguiente:
#!/usr/bin/env bash
# Ejemplo de script Bash para auditar registros de acceso de un servidor Nginx
# Detecta las 5 direcciones IP con más peticiones que han generado errores HTTP 500
LOG_FILE="/var/log/nginx/access.log"
echo "Auditoria de peticions fallides (HTTP 500):"
awk '$9 == 500 {print $1}' "$LOG_FILE" | sort | uniq -c | sort -nr | head -n 5
Comandos esenciales para desarrolladores
| Comando | Función principal | Ejemplo de uso |
|---|---|---|
curl / wget |
Descargar archivos y realizar peticiones HTTP directas | curl -I https://jaumetur.es |
ps / top / htop |
Monitorización de procesos en tiempo real y uso de memoria/CPU | htop |
grep |
Búsqueda de patrones de texto con expresiones regulares | grep -rn "API_URL" src/ |
chmod / chown |
Gestión de permisos de lectura/escritura/ejecución y propietarios | chmod +x deploy.sh |
journalctl |
Lectura y diagnóstico de logs del sistema systemd |
journalctl -u nginx -f |
Nuestro uso en ingeniería
En nuestro flujo diario de desarrollo, Linux es tanto el entorno de despliegue de nuestros servidores como el motor sobre el que se ejecutan los contenedores y las automatizaciones de despliegue continuo.

Checklist de Rendiment (60 FPS) i Accessibilitat (WCAG AA)
Els 25 punts d'auditoria que aplique en producció abans de desplegar qualsevol aplicació web o SPA en Angular/TypeScript.
¿Tienes un reto similar en tu empresa o negocio?
Desarrollo aplicaciones web a medida, diseño páginas web rápidas y ayudo a negocios a optimizar rendimiento y automatización en Xàtiva, Valencia o en remoto.
Artículos relacionados
Git y GitHub: control de versiones distribuido, estrategia trunk-based y flujo colaborativo
Guía completa sobre Git y GitHub: cómo Linus Torvalds lo creó en 2005 para el kernel de Linux, el funcionamiento del modelo de grafos acíclicos dirigidos (DAG), las ramas, las pull requests y GitOps.
CI/CDGuía paso a paso: CI/CD para frontend con GitHub Actions y despliegue automatizado
Aprende a diseñar un pipeline profesional de integración y despliegue continuos: linter, pruebas, compilación optimizada, caché eficiente y despliegue sin interrupciones.