10. Array no Shell Script
Atualizado em: 26 de março de 2024
Por: Nelson H. Koshoji
10.1. Array no Shell Script
Exemplo 1: Manipulação de Strings em um Array
Este script cria um array de strings, exibe todos os valores e, em seguida, inverte a ordem dos elementos no array.
#!/bin/bash
# Declaração de um array de strings
nomes=("Alice" "Bruno" "Carlos" "Diana")
# Exibindo todos os elementos do array
echo "Nomes originais:"
for nome in "${nomes[@]}"; do
echo $nome
done
# Invertendo a ordem dos elementos no array
tamanho=${#nomes[@]}
for (( i=0; i<(tamanho/2); i++ )); do
# Troca elementos
temp=${nomes[$i]}
nomes[$i]=${nomes[$tamanho-$i-1]}
nomes[$tamanho-$i-1]=$temp
done
echo "Nomes invertidos:"
for nome in "${nomes[@]}"; do
echo $nome
done
Exemplo 2: Soma de Valores Numéricos em um Array
Este script demonstra como somar valores numéricos armazenados em um array.
#!/bin/bash
# Declaração de um array de números
numeros=(10 20 30 40 50)
# Calculando a soma dos números
soma=0
for num in "${numeros[@]}"; do
soma=$(($soma + $num))
done
echo "A soma dos números é: $soma"
Exemplo 3: Filtrando Strings de um Array
Este script filtra strings de um array baseado em um critério específico, neste caso, strings que contenham a letra “a”.
#!/bin/bash
# Declaração de um array de strings
frutas=("Maçã" "Banana" "Pera" "Uva" "Manga")
# Array para armazenar frutas que contêm a letra "a"
frutas_com_a=()
# Filtrando frutas que contêm a letra "a"
for fruta in "${frutas[@]}"; do
if [[ $fruta == *"a"* ]]; then
frutas_com_a+=("$fruta")
fi
done
echo "Frutas que contêm a letra 'a':"
for fruta in "${frutas_com_a[@]}"; do
echo $fruta
done