A logo showing the text blog.marcnuri.com
English
Inicio»Operaciones»Bash: Cómo iterar a través de una lista de cadenas de texto

Entradas Recientes

  • Windows 11: Cómo habilitar la cuenta de Administrador/Administrator
  • Bash: Cómo esperar hasta que un archivo exista
  • Gatsby 5: Cómo consultar datos de múltiples fuentes con GraphQL
  • Bash: Cómo iterar a través de una lista de cadenas de texto
  • Cliente de Kubernetes para Java: Cómo configurar el cliente HTTP subyacente

Categorías

  • Antiguo
  • Front-end
  • Herramientas
  • Java
  • JavaScript
  • Operaciones
  • Proyectos personales

Archivos

  • septiembre 2023
  • agosto 2023
  • julio 2023
  • junio 2023
  • mayo 2023
  • abril 2023
  • marzo 2023
  • enero 2023
  • diciembre 2022
  • noviembre 2022
  • octubre 2022
  • agosto 2022
  • julio 2022
  • mayo 2022
  • febrero 2022
  • enero 2022
  • diciembre 2021
  • noviembre 2021
  • octubre 2021
  • septiembre 2021
  • agosto 2021
  • julio 2021
  • diciembre 2020
  • octubre 2020
  • agosto 2020
  • mayo 2020
  • marzo 2020
  • noviembre 2019
  • octubre 2019
  • julio 2019
  • diciembre 2018
  • agosto 2018
  • julio 2018
  • junio 2018
  • marzo 2018
  • febrero 2018
  • noviembre 2017
  • octubre 2017
  • agosto 2017
  • julio 2017
  • julio 2016
  • enero 2016
  • diciembre 2015
  • noviembre 2015
  • marzo 2007

Bash: Cómo iterar a través de una lista de cadenas de texto

2023-09-04 en Operaciones etiquetado BASH / Shell / Consejo breve por Marc Nuri | Última actualización: 2023-09-04
English version

¿Alguna vez has necesitado realizar la misma operación sobre múltiples cadenas de texto en un script BASH? En este artículo, exploraremos cómo lograr esto iterando sobre una lista o array de cadenas de texto definidas en una variable.

El script de ejemplo

Comencemos con un script BASH de ejemplo que demuestra este concepto. Puedes ejecutar directamente este script en una consola de BASH o incluirlo en un script.

bash
declare -a entries=(
  "First"
  "Second"
  "Third"
  "The fourth"
)
for entry in "${entries[@]}"; do
  echo "$entry entry"
done

Si ejecutamos el script obtendremos la siguiente salida:

First entry
Second entry
Third entry
The fourth entry

Este script es muy sencillo y sirve para ilustrar el concepto. No obstante, puedes aprovecharlo como base para operaciones más complejas. Por ejemplo, ejecutar comandos para cada entrada o utilizar las entradas como parámetros de entrada para otras expresiones.

Entendiendo el script

Ahora analizaremos cada parte del script para entender cómo funciona.

Definiendo la variable con la lista de cadenas de texto

La primera línea del script declara una variable de tipo array llamada entries aprovechando el builtin declare proporcionado por BASH. La sintaxis de declare para este caso es la siguiente:

bash
declare -a name=(value1 value2 ... valueN)

Declarar arrays explícitamente es una buena práctica en scripts BASH.

Iterando sobre el array

Para iterar sobre el array utilizamos un looping construct del siguiente modo:

bash
for entry in "${entries[@]}"; do

Aquí, expandimos la variable array entries usando "${entries[@]}". Esto preserva los elementos individuales, incluidos los espacios dentro de ellos. Sin las comillas dobles, los elementos como "The fourth" se tratarían como palabras separadas. Esta sería la salida en caso de que nos olvidáramos de encerrar la variable entre comillas dobles:

First entry
Second entry
Third entry
The entry
fourth entry

Siguiendo estos sencillos pasos, puedes iterar de forma eficiente a través de una lista de cadenas de texto en tus scripts BASH. Ahora tienes los conocimientos para aplicar esta técnica a varios escenarios en tus aventuras de scripting.

¡Feliz scripting!

Twitter iconFacebook iconLinkedIn iconPinterest iconEmail icon

Navegador de artículos

← Gatsby 5: Cómo consultar datos de múltiples fuentes con GraphQLCliente de Kubernetes para Java: Cómo configurar el cliente HTTP subyacente →
© 2007 - 2023 Marc Nuri