10. Bash: arreglos y aritmética

Publicado por

Bash ofrece la posibilidad de usar arreglos y aritmética. Veamos algunos casos.

Aritmética

En Bash las variables son tratadas como cadenas; así que siempre que se trata de una asignación simple, no sabe diferenciar entre un número, por ejemplo el 7 y la cadena de caracteres 7”.

Ejemplo:

Observa que es lo que pasa con el siguiente script.

#!/bin/bash

cadena=7
numero=$((7))

resultado=$cadena-$numero
resultado2=$(($cadena-$numero))
echo "$cadena - $numero = $resultado"
echo "$cadena - $numero = $resultado2"

Salida:

aritmética en Bash

Entonces se puede deducir que para realizar operaciones aritméticas con variables en Bash, es necesario utilizar la siguiente notación.

numero=$((numero1 [operador aritmético] numero2))

O puede ser de la siguiente manera:

numero=$(($numero1 [operador aritmético] $numero2))

También es posible utilizar números directamente:

numero=$((numero1 [operador aritmético] 7 [operador aritmético] 9 ...))

Arreglos

En Bash también se pueden utilizar arreglos, es decir, una colección de elementos en común.

Ejemplo:

#!/bin/bash

arreglo=(Hola mundo 'yo soy' Miriam)
arreglo[1]=,

echo "arreglo[@]=${arreglo[@]}"
echo "El arreglo contiene ${#arreglo[@]} elementos"

Si ejecutas el script anterior, notarás que para usar arreglos en Bash debes utilizar la siguiente notación:

Para crear un arreglo con ciertos elementos:

arreglo=(elemento1 elemento2 ...)

Si el elemento es una cadena con espacios, entonces debe ir entre comillas simples:

arreglo=('Esta es una cadena con espacios' elemento ...)

Para obtener el número de elementos en el arreglo:

${#arreglo[@]}

Si se quieren obtener todos los elementos del arreglo:

${arreglo[@]}

 Salida:

Arreglo en Bash

Para recorrer elemento por elemento un arreglo, es posible hacerlo con ayuda de un ciclo.

Ejemplo:

#!/bin/bash

numeros=(1 2 3 4 5)

for numero in ${numeros[@]}
do
echo número $numero
done

Salida:

Arreglos en Bash

Con esta nota hemos llegado al final de la segunda temporada de la serie administración de sistemas GNU/Linux. Como te habrás dado cuenta, Bash es un lenguaje de programación muy fácil de aprender que sirve para escribir scripts para automatizar las tareas de un administrador de sistemas. Espero que esta serie de notas estén siendo de tu agrado. La tercera temporada tratará sobre scripting en Python. ¡Hasta entonces!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *