Programación de scripts Bash: Todo lo que necesitas saber (2025)

Volver a Artículos

  • 30 Ago
  • 7:30 am
  • m de lecture
  • Dev

Programación de scripts Bash: Todo lo que necesitas saber (1)

El scripting ofrece a los usuarios la posibilidad de simplificar y racionalizar sus operaciones diarias. Los scripts Bash (acrónimo de Bourne Again Shell) son elementos muy poderosos y útiles para el desarrollo.

Se trata de un intérprete de comandos para los sistemas Unix y Linux. Diseñado por Brian Fox en 1989 para el proyecto GNU, fue desarrollado para reemplazar el Bourne Shell original, aportando mejoras significativas en términos de funcionalidades y compatibilidad.

La importancia del Bash en la administración de sistemas y el desarrollo de software no puede ser subestimada. Permite automatizar tareas repetitivas, gestionar sistemas a gran escala y facilitar el desarrollo de scripts complejos para diversas aplicaciones.

¿Cuáles son los fundamentos del Bash Scripting?

El Bash scripting es una habilidad esencial para cualquiera que trabaje con sistemas Unix o Linux.

¿Qué es Bash y Bang: introducción al shebang?

El primer elemento clave de cualquier script Bash es la línea shebang. Indica al sistema qué intérprete usar para ejecutar el script.

#!/bin/bash

El #! es conocido como shebang, y /bin/bash especifica la ruta hacia el intérprete Bash. Esta línea es crucial ya que asegura que el script será interpretado por Bash, incluso si hay otros shells presentes en el sistema.

¿Cómo dar el primer paso: Hello World?

Con tu editor de texto favorito, crea un archivo llamado hello.sh, y añade el siguiente contenido y guarda:

#!/bin/bashecho "Hello World!"

¿Cómo hacer un script ejecutable?

Por defecto, un archivo de texto no tiene los permisos necesarios para ser ejecutado como un programa. Para hacer tu script ejecutable, es necesario usar el siguiente comando para modificar los permisos:

chmod +x hello.sh

Luego es posible verificar los permisos con el siguiente comando:

ls -l hello.sh

Entendiendo Bash Scripting

¿Cómo ejecutar un script?

Para ejecutar el script, varias posibilidades se nos ofrecen:

  • Ruta relativa:
  • Uso del shell Bash:
bash hello.sh
  • A través del shell sh, pero puede causar comportamientos diferentes si el script utiliza funcionalidades específicas de Bash:
sh hello.sh

¿Cuáles son los comandos básicos?

El Bash scripting se basa en el uso eficaz de una variedad de comandos para realizar tareas simples y complejas. A continuación, algunos comandos utilizados comúnmente para navegar y manipular el sistema de archivos:

  • Listar los archivos y carpetas del directorio actual
ls
  • Cambiar de directorio
cd /path/to/directory
  • Mostrar el directorio actual
pwd
  • Crear un archivo vacío, o actualizar la marca de tiempo de un archivo existente
touch newfile.txt
  • Eliminar archivos o carpetas
rm file.txt

Formación en Bash Scripting

¿Cómo combinar comandos?

Los scripts Bash se vuelven poderosos cuando combinas comandos para realizar tareas más complejas. A continuación, algunos ejemplos:

  • Uso del “;” para ejecutar varios comandos en una secuencia
cd /path/to/directory; ls; pwd
  • Redirección de salida: Usa > para redirigir la salida de un comando a un archivo, o >> para añadir a un archivo existente
echo "Hello, World!" > hello.txtecho "Hello again!" >> hello.txt
  • Uso del Pipe ( | ) para dirigir la salida de un comando como entrada de otro comando
ls -l | grep ".txt"

¿Cómo gestionar variables y sustitución?

  • Declaración de una variable y uso de esta última con$
NAME=”Alice”echo “Hello, $NAME!”
  • Uso de la sustitución para usar la salida de un comando como variable
DATE=$(date)echo "Today's date is $DATE"

Nota que este ejemplo es a menudo utilizado en la creación de logs.

¿Cómo gestionar rutas?

Entender y gestionar las rutas de archivos es esencial para navegar eficazmente en el sistema de archivos y escribir scripts robustos.

¿Cuál es la diferencia entre ruta absoluta vs relativa?

Programación de scripts Bash: Todo lo que necesitas saber (2) Absoluta Programación de scripts Bash: Todo lo que necesitas saber (3) Relativa
Especifica la ubicación completa de un archivo o directorio desde la raíz del sistema de archivos. Indica la ubicación de un archivo o directorio en relación con el directorio actual.
Ejemplo: /home/user/documents/report.txt Ejemplo: documents/report.txt

Entender todo sobre Bash Scripting

¿Qué comandos están asociados a la gestión de rutas?

Para localizar archivos y comandos, hay varias herramientas disponibles en Bash:

  • Encontrar la ubicación de un ejecutable
which bash
  • Ubicación de los binarios, fuentes y documentaciones asociadas a un comando
whereis bash
  • Búsqueda de archivos y carpetas
find /home/user -name "report.txt"

¿Cuáles son las variables de entorno más comunes?

Las variables de entorno son pares clave-valor que afectan el comportamiento de los procesos del sistema. A continuación, las más comunes:

  • $PATH : contiene una lista de directorios donde el sistema busca los ejecutables. Para modificarlo, usa el siguiente comando
export PATH=$PATH:/new/directory/path
  • $HOME : Representa la carpeta personal del usuario
echo $HOMEcd $HOME
  • $PWD : Indica la carpeta de trabajo actual
echo $PWD
  • $USER : Contiene el nombre del usuario actual
echo $USER

¿Cómo se maneja el control de flujo y lógica?

El control de flujo y la lógica son elementos esenciales del Bash scripting, permitiendo escribir scripts dinámicos y adaptables.

Todo lo que necesitas saber sobre Bash Scripting

¿Cómo funcionan las instrucciones condicionales?

Permiten ejecutar código en función de ciertas condiciones. A continuación, un ejemplo que ilustra el uso de if…elif…else.

#!/bin/bash echo "Ingrese un número: " read number if [ $number -gt 10 ]; then echo "El número es mayor que 10." elif [ $number -eq 10 ]; then echo "El número es igual a 10." else echo "El número es menor que 10." fi

¿Cómo funcionan los bucles?

Los bucles se utilizan para repetir comandos varias veces.

  • for
for i in 1 2 3 4 5; do echo "Contador : $i"done
  • while
count=1while [ $count -le 5 ]; do echo "Contador : $count" ((count++))done
  • until
count=1until [ $count -gt 5 ]; do echo "Contador : $count" ((count++))done

Formación en Bash Scripting

¿Cuáles son algunos scripts útiles y buenas prácticas?

¿Ejemplos de scripts?

  • Script de backup : copia de archivos de una fuente a un destino
#!/bin/bash# Este script realiza una copia de seguridad de los archivossrc="/home/user/documents"dest="/backup/documents"if [ ! -d $dest ]; then mkdir -p $destfifor file in $src/*; do if [ -f $file ]; then cp $file $dest echo "Copiado $file vers $dest" fidone
  • Limpieza : eliminación de elementos de una carpeta temporal
#!/bin/bashdir="/home/user/temp"echo "Limpiando el directorio $dir"for file in $dir/*; do if [ -f $file ]; then rm $file echo "Eliminado $file" fidone

¿Cuáles son algunas buenas prácticas?

1. Comenta : esto hace que los scripts sean más legibles y comprensibles

2. Nombra tus variables de manera descriptiva. Evita nombres de variables como $var1, $var2 o $tmpvar.

3. Gestiona los errores : usa condiciones para verificar el éxito y capturar los errores de manera apropiada

4. Modula tu código mediante el uso de funciones, especialmente si el script realiza varias operaciones, por ejemplo:

backup_files() { # Código para realizar la copia de seguridad}

5. Depura para identificar los errores. A continuación, comandos útiles para esto:

#!/bin/bashset -x # Activa el modo traza, mostrando cada comando y su resultado# Código del script#!/bin/bashset -e # Detiene el script en caso de error# Código del scriptecho "Début du script" # Usar echo en puntos estratégicos del script para verificar las salidas y seguir el flujo de ejecución

Para concluir

El Bash scripting es una herramienta poderosa para automatizar y simplificar las tareas en los sistemas Unix y Linux. Dominando los fundamentos, los comandos básicos, la gestión de rutas, el control de flujo y las buenas prácticas, puedes escribir scripts robustos y eficaces para mejorar tu productividad diaria.

Iniciar un curso de formación sobre Bash Scripting

¿No está disponible?

Déjenos su dirección de correo electrónico para que podamos enviarle los nuevos artículos cuando se publiquen.

Programación de scripts Bash: Todo lo que necesitas saber (4)

Programación de scripts Bash: Todo lo que necesitas saber (2025)

FAQs

¿Qué se puede hacer con bash script? ›

Los scripts de Bash son una forma útil de agrupar comandos de forma elegante. Podrías aprovechar la potencia de un bash script para varios casos de uso, como ejecutar un comando shell, ejecutar varios comandos juntos, personalizar tareas administrativas, realizar automatización de tareas, etc.

¿Cómo comenzar un script bash? ›

Comienza escribiendo #!/bin/bash seguido de los comandos bash. ¡Importante! Cuando hayas terminado de utilizar el editor de texto Nano, pulsa Ctrl+X para cerrarlo y, a continuación, pulsa Y e Intro para guardar los cambios.

¿Qué lenguaje utiliza bash? ›

GNU Bash o simplemente Bash (Bourne-again shell) es un lenguaje de comandos y shell de Unix. Bash es un procesador de comandos que generalmente se ejecuta en una ventana de texto donde el usuario escribe comandos que causan acciones.

¿Cómo funciona el comando bash? ›

Bash (Bourne Again Shell) es un intérprete de comandos que actúa como interfaz entre el kernel Linux y los usuarios o programas. Su funcionamiento se basa en ejecutar una a una las instrucciones que introduce el usuario o que forman parte de un script, y a continuación devolver unos resultados.

¿Cómo hacer un script? ›

Escribir y ejecutar un script
  1. Seleccione Archivo > Nuevo.
  2. Haga clic en Crear script.
  3. En el Editor de script, teclee su script o cópielo y péguelo de un editor de texto externo.
  4. Para ejecutar el script, seleccione la pestaña Editar, y haga clic en Ejecutar script. Nota. Solo se puede ejecutar un script a la vez.

¿Quién es el dueño de Bash? ›

Bash es un producto desarrollado por TFGLabs, una start-up creada dentro de TFG y dirigida por los veteranos del comercio electrónico Claude Hanan y Luke Jedeiken . Hanan y Jedeiken fundaron Superbalist, que luego fue vendida a Takealot. También se desempeñaron como ejecutivos de Takealot durante el rápido crecimiento de la empresa.

¿Quién creó Bash? ›

Bash
AutorBrian Fox
DesarrolladorProyecto GNU
Lanzamiento inicial8 de junio de 1989
LicenciaGPLv3
16 more rows

¿Debería poner bash en mi currículum? ›

Resalte los lenguajes de programación relevantes en los que es competente, como Python, Bash o JavaScript, incluyéndolos de forma destacada en su sección de habilidades .

¿Qué hace un script bash? ›

Un script bash es un archivo que contiene una secuencia de comandos que el programa bash ejecuta línea por línea. Permite realizar una serie de acciones, como navegar a un directorio específico, crear una carpeta y lanzar un proceso mediante la línea de comandos .

¿Qué es $1 en bash? ›

$0 representa el nombre del script. $1 – $9 los primeros nueve argumentos que se pasan a un script en Bash. $# el número de argumentos que se pasan a un script.

¿Qué comando se usa para crear un archivo bash? ›

Como mencionamos anteriormente, cuando quieras escribir un archivo de script bash, utiliza el comando nano filename.sh para crear y abrir un archivo . sh, y comenzar a escribir tus funciones bash. No olvides salir y guardar el archivo cuando hayas terminado.

¿Qué puede hacer bash? ›

Los scripts de Bash son una forma de automatizar tareas en el shell de Unix. Por ejemplo, se pueden utilizar para automatizar tareas de mantenimiento del sistema, como la limpieza de archivos de registro o la realización de copias de seguridad de datos , lo que ayuda a reducir los errores manuales y a ahorrar tiempo.

¿Qué es un script y para qué sirve? ›

En informática, un script, secuencia de comandos​ o guion​​​ (traduciendo desde inglés) es un término informal que se usa para designar un lenguaje de programación que se utiliza para manipular, personalizar y automatizar las instalaciones de un sistema existente.

¿Qué se puede hacer con shell? ›

Un shell es un tipo de programa informático llamado intérprete de comandos que permite a los usuarios de Linux y Unix controlar sus sistemas operativos con interfaces de línea de comandos. Los shells permiten a los usuarios comunicarse de forma eficiente y directa con sus sistemas operativos.

¿Qué hace este script de shell? ›

Un script de shell es una secuencia de mandatos del shell y del sistema operativo que se almacena en un archivo. Cuando se inicie la sesión en el sistema, éste localizará el nombre de un programa de shell a ejecutar. Después de ejecutarse, el shell visualiza un indicador de mandatos.

References

Top Articles
Latest Posts
Recommended Articles
Article information

Author: Laurine Ryan

Last Updated:

Views: 6019

Rating: 4.7 / 5 (77 voted)

Reviews: 92% of readers found this page helpful

Author information

Name: Laurine Ryan

Birthday: 1994-12-23

Address: Suite 751 871 Lissette Throughway, West Kittie, NH 41603

Phone: +2366831109631

Job: Sales Producer

Hobby: Creative writing, Motor sports, Do it yourself, Skateboarding, Coffee roasting, Calligraphy, Stand-up comedy

Introduction: My name is Laurine Ryan, I am a adorable, fair, graceful, spotless, gorgeous, homely, cooperative person who loves writing and wants to share my knowledge and understanding with you.