Certificado de Consola de comandos Linux Bash

15h 0m

Aprende a utilizar la consola de comandos Linux Bash y certifícate. Domina navegación, gestión de archivos, procesos y scripting en Bash para mejorar tus habilidades en Linux.

Accede GRATIS y certifícate

La consola de comandos es una herramienta fundamental en el mundo de Linux. Permite interactuar de manera directa con el sistema operativo, ofreciendo un control total sobre las operaciones que se realizan. Bash, acrónimo de "Bourne Again SHell", es el intérprete de comandos predeterminado en la mayoría de distribuciones de Linux y es esencial para cualquier usuario que desee dominar este sistema operativo.

¿Por qué aprender Bash?

Conocer Bash no solo te permite realizar tareas de forma más eficiente, sino que también te abre las puertas a la automatización y al scripting, facilitando procesos repetitivos y complejos. Al dominar la consola de comandos Linux Bash, podrás:

  • Navegar y gestionar archivos y directorios con rapidez.
  • Controlar procesos y servicios en el sistema.
  • Personalizar y configurar tu entorno de trabajo.
  • Crear scripts que automatizan tareas, ahorrando tiempo y esfuerzo.

Este curso, Consola de comandos Linux Bash, está diseñado para guiarte desde los conceptos básicos hasta técnicas avanzadas, proporcionándote las habilidades necesarias para desenvolverte con soltura en entornos Linux.

Introducción y entorno

Principales distribuciones de Linux

Linux es un sistema operativo de código abierto que se distribuye en diferentes versiones, conocidas como distribuciones. A diferencia de Windows, que es propietario y de código cerrado, Linux ofrece flexibilidad y adaptabilidad según las necesidades del usuario.

  • Debian: Una de las distribuciones más antiguas, conocida por su estabilidad y su enfoque en la comunidad.
  • Ubuntu: Basada en Debian, es una de las distribuciones más populares para usuarios nuevos y experimentados, con un fuerte soporte de la comunidad.
  • Alpine Linux: Orientada a la seguridad y ligereza, ideal para sistemas con recursos limitados o contenedores.

Instalar Ubuntu en Windows con WSL

El Subsistema de Windows para Linux (WSL) permite ejecutar entornos Linux directamente en Windows sin la sobrecarga de una máquina virtual. Esto es especialmente útil para desarrolladores que trabajan en entornos mixtos.

  • Introducción a WSL: WSL es una capa de compatibilidad que permite ejecutar binarios Linux en Windows.
  • Configuración previa en Windows: Habilitar WSL desde las opciones de desarrollador y actualizar el sistema.
  • Instalación de Ubuntu en WSL: Descarga desde Microsoft Store y configuración inicial.
  • Primeros pasos con Ubuntu en WSL: Navegación básica y ejecución de comandos en Bash.

Introducción a Shell y Bash

  • Definición y propósito de Shell: Es la interfaz que permite comunicarse con el sistema operativo mediante comandos.
  • Definición y propósito de Bash: Es una de las múltiples Shell disponibles, destacando por su compatibilidad y funciones avanzadas.
  • ¿Por qué es importante saber usar la consola?: Ofrece mayor control, eficiencia y posibilidades de automatización.
  • El comando man para ver documentación de ayuda: Acceso a manuales detallados de comandos y herramientas.

Navegación y gestión de archivos y directorios

Comandos de navegación: pwd, cd y ls

  • Comando pwd: Muestra la ruta del directorio actual, ayudando a orientarse en el sistema de archivos.
  • Rutas absolutas y relativas: Comprender la diferencia es esencial para navegar y manipular archivos correctamente.
  • Comando cd y sus atajos: Permite cambiar de directorio. Atajos como cd ~ (home) o cd .. (directorio padre) optimizan la navegación.
  • Comando ls y sus opciones comunes: Lista el contenido de un directorio. Opciones como -l (lista detallada) o -a (archivos ocultos) amplían su funcionalidad.
  • Comando --help para ver opciones de los comandos: Proporciona una guía rápida sobre cómo utilizar un comando.

Manipulación de archivos y directorios

  • Creación y eliminación: mkdir para crear directorios, touch para crear archivos vacíos, rm y rmdir para eliminar.
  • Copiar y mover: cp para copiar archivos o directorios, mv para mover o renombrar.
  • Visualización del contenido: Comandos como cat, less, more y head permiten ver el contenido de archivos.
  • Búsqueda y filtrado: find localiza archivos y directorios, xargs ejecuta comandos sobre los resultados, grep busca patrones dentro de archivos.

Comprimir y descomprimir archivos con tar y gzip

  • Uso de tar: Empaqueta múltiples archivos y directorios en uno solo, facilitando su gestión.
  • Comandos gzip y gunzip: Comprimen y descomprimen archivos, reduciendo su tamaño para almacenamiento o transferencia.
  • Crear archivos .tar.gz: Combinación de tar y gzip para empaquetar y comprimir simultáneamente.

Manipulación de permisos con chmod, chown y chgrp

  • Notación simbólica y octal: Dos formas de representar y modificar permisos en Linux.
  • Comando chmod: Cambia los permisos de archivos y directorios, controlando lectura, escritura y ejecución.
  • Uso de chown y chgrp: chown modifica el propietario, chgrp cambia el grupo asociado.
  • Usuario administrador y creación de usuarios: Gestión de usuarios y privilegios en el sistema.

Enlaces simbólicos y duros

  • Creación y uso de enlaces simbólicos (ln -s): Atajos o referencias a archivos o directorios, útiles para accesos rápidos.
  • Diferencias con enlaces duros: Mientras un enlace duro es indistinguible del original, un enlace simbólico apunta al nombre del archivo.
  • Gestión y eliminación de enlaces: Cómo identificar y eliminar enlaces sin afectar al contenido original.

Redirección y tuberías

  • Redirección de salida estándar: > sobrescribe y >> agrega al final de un archivo; 2> y 2>> manejan errores.
  • Redirección de entrada estándar: < permite que un comando tome entrada de un archivo.
  • Uso de tuberías (|): Conecta la salida de un comando con la entrada de otro, creando cadenas de procesamiento.
  • Tuberías con redirección: Combinación de tuberías y redirecciones para operaciones más complejas.
  • El comando tee: Divide la salida de un comando, mostrando en pantalla y guardando en un archivo simultáneamente.

Gestión de procesos y servicios

Gestión de procesos con ps, htop y pgrep

  • Procesos en primer y segundo plano: Diferencias y cómo interactuar con ellos.
  • Visualización y monitorización: ps muestra procesos activos, top y htop ofrecen una vista en tiempo real.
  • Buscar procesos con pgrep: Localiza procesos por nombre o criterios específicos.
  • Envío de señales a procesos: Uso de kill y otras señales para controlar procesos.

Gestión de servicios con systemd

  • Introducción a los servicios en Unix/Linux: Programas que se ejecutan en segundo plano para ofrecer funcionalidades.
  • El sistema de init systemd: Administrador de sistemas y servicios en muchas distribuciones modernas.
  • Uso de systemctl: Controla la activación, desactivación y estado de servicios.
  • Supervisión y registro con systemd: Acceso a logs y seguimiento de eventos del sistema.

Interacción con el sistema

Configuración de Bash

  • Archivos de configuración: .bashrc, .bash_profile y otros permiten personalizar el entorno.
  • Variables de entorno: Modificación y creación de variables que afectan al comportamiento del sistema y aplicaciones.
  • Personalización del prompt: Adaptar la línea de comandos para mostrar información relevante.

Redes y comunicación con ifconfig, ip y netstat

  • Conceptos básicos de redes: Dirección IP, máscaras de red, puertas de enlace y su importancia.
  • Comandos de red:
    • ifconfig y ip: Configuración y visualización de interfaces de red.
    • ping: Verificación de conectividad con otros hosts.
    • nslookup y dig: Resolución de nombres de dominio y diagnóstico DNS.
    • traceroute: Seguimiento de la ruta que toman los paquetes hasta su destino.
    • netstat y ss: Información sobre conexiones y puertos abiertos.

Transferencia de archivos y comunicación remota con SSH

  • El comando scp: Copia segura de archivos entre hosts a través de SSH.
  • El comando rsync: Sincronización eficiente de archivos y directorios, local o remotamente.
  • El comando ssh: Conexión segura a servidores remotos, permitiendo ejecutar comandos o acceder a una shell.

Gestión de paquetes y actualización del sistema

  • Introducción a gestores de paquetes: Facilitan la instalación, actualización y eliminación de software.
  • Uso del gestor apt en Debian/Ubuntu:
    • apt update: Actualiza la lista de paquetes disponibles.
    • apt upgrade: Actualiza los paquetes instalados.
    • apt install y apt remove: Instala o elimina paquetes específicos.
  • Gestión de dependencias: apt se encarga de resolver dependencias para asegurar el correcto funcionamiento del software.
  • Manejo de repositorios: Añadir o modificar fuentes desde las cuales se obtienen los paquetes.

Sintaxis y creación de scripts en Bash

Variables y tipos de datos

  • Definición y asignación: Asignar valores a variables para su uso en scripts.
  • Tipos de datos: Aunque Bash trata todo como cadenas, es posible trabajar con números y otros tipos.
  • Ámbito de las variables: Entender el alcance local y global, y cómo exportar variables.

Operadores

  • Operadores aritméticos: Suma, resta, multiplicación, división y módulo.
  • Operadores de comparación: Igualdad, desigualdad, mayor, menor, etc., utilizados en condiciones.
  • Operadores lógicos: AND, OR y NOT para evaluar múltiples condiciones.
  • Operadores de manipulación de cadenas: Concatenación, longitud, extracción de subcadenas.
  • Operadores de archivos: Comprobar existencia, permisos y tipo de archivos.
  • Precedencia de operadores: Orden en el que se evalúan las expresiones.

Sintaxis de control de flujo

  • Estructuras condicionales:
    • if, else, elif: Ejecutar comandos basados en condiciones.
  • Estructura case: Simplifica múltiples condiciones, similar a switch en otros lenguajes.
  • Bucles:
    • for: Iterar sobre una lista o rango.
    • while y until: Repetir mientras se cumpla o no una condición.
  • Control de bucles: break para salir y continue para saltar a la siguiente iteración.
  • Comando select: Crear menús interactivos en scripts.

Expresiones regulares y manipulación de texto

  • Introducción a las expresiones regulares: Patrones que permiten buscar y manipular texto con precisión.
  • Uso de grep: Buscar cadenas que coincidan con un patrón en archivos o salida de comandos.
  • Manipulación con sed: Editor de flujo que permite reemplazar, insertar y eliminar texto en línea.
  • Procesamiento con awk: Herramienta potente para analizar y procesar archivos de texto estructurados.

Definición y uso de funciones

  • Sintaxis básica: Definir funciones para reutilizar código en scripts.
  • Llamada y ejecución: Cómo invocar funciones y pasarles el control en un script.
  • Paso de argumentos: Enviar datos a las funciones para personalizar su ejecución.
  • Retorno de valores: Obtener resultados de una función para utilizarlos posteriormente.
Empezar curso GRATIS

Tutoriales de programación en este certificado

Completa estas lecciones de programación para obtener tu certificado de superación

Principales Distribuciones De Linux

GNU Bash

Introducción Y Entorno

Instalar Ubuntu En Windows Con Wsl

GNU Bash

Introducción Y Entorno

Introducción A Shell Y Bash

GNU Bash

Introducción Y Entorno

Comandos De Navegación Pwd, Cd Y Ls

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Manipulación De Archivos Y Directorios

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Comprimir Y Descomprimir Archivos En Bash Con Tar Y Gzip

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Manipulación De Permisos De Archivos Y Directorios Con Chmod, Chown Y Chgrp

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Enlaces Simbólicos Y Duros

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Redirección Y Tuberías

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Gestión De Procesos Con Ps, Htop Y Pgrep

GNU Bash

Gestión De Procesos Y Servicios

Gestión De Servicios Con Systemd

GNU Bash

Gestión De Procesos Y Servicios

Configuración De Bash

GNU Bash

Interacción Con El Sistema

Redes Y Comunicación Con Ifconfig, Ip Y Netstat

GNU Bash

Interacción Con El Sistema

Transferencia De Archivos Y Comunicación Remota Con Ssh

GNU Bash

Interacción Con El Sistema

Gestión De Paquetes Y Dependencias Y Actualización Del Sistema

GNU Bash

Interacción Con El Sistema

Variables Y Tipos De Datos

GNU Bash

Sintaxis Y Creación De Scripts En Bash

Operadores

GNU Bash

Sintaxis Y Creación De Scripts En Bash

Sintaxis De Control De Flujo

GNU Bash

Sintaxis Y Creación De Scripts En Bash

Expresiones Regulares Y Manipulación De Texto

GNU Bash

Sintaxis Y Creación De Scripts En Bash

Definición Y Uso De Funciones

GNU Bash

Sintaxis Y Creación De Scripts En Bash

Ejercicios de programación de Consola de comandos Linux Bash

Completa estos ejercicios de programación para obtener tu certificado de superación

Otros cursos de programación con certificado

Supera todos los retos de Consola de comandos Linux Bash y obtén estos certificados de superación para mejorar tu currículum y tu empleabilidad.

Tecnologías que aprenderás

Consola de comandos Linux Bash

Al finalizar este curso obtendrás

Certificado de superación en Consola de comandos Linux Bash

Certificado de superación en Consola de comandos Linux Bash

Tras completar todas las lecciones y ejercicios del curso Consola de comandos Linux Bash se te genera un enlace con tu certificado para que lo puedas descargar o compartir directamente en cualquier plataforma, siempre accesible.

Accede GRATIS a las certificaciones