Extrai cada dígito da variável e armazena como nova variável no bash

0

Eu tenho uma variável que é um número que varia de 1 - infinito. Vamos dizer que o número é 40. Eu preciso armazenar 4 como uma variável e 0 como uma variável. Como o número pode crescer além de 2 dígitos, digamos que o número seja 125. Preciso armazenar 1 como variável, 2 como variável e 5 como variável.
Como posso fazer isso com o bash?

    
por OB7 23.07.2015 / 19:52

1 resposta

0

Você pode usar um loop de contagem ao longo do comprimento do valor que deseja dividir em dígitos e colocar os dígitos em uma matriz, por exemplo:

value=125
arr=()
for ((i = 0; i < ${#value}; i++)); do
    arr+=(${value:$i:1})
done

for x in "${arr[@]}"; do
    echo $x
done

Isso imprimirá:

1
2
5
    
por 22.12.2016 / 11:57

Tags