Витягніть кожну цифру змінної та зберігайте її як нову змінну в bash


0

У мене є змінна, яка є числом від 1 - нескінченності. Скажімо, число 40. Мені потрібно зберегти 4 як змінну, а 0 - як змінну. Оскільки число може перевищувати 2 цифри, можна сказати, що число - 125. Мені потрібно зберегти 1 як змінну, 2 як змінну та 5 як змінну.
Як це можна зробити з bash?


Чи можливий також масив?
Cyrus

@Cyrys - Абсолютно.
OB7

Відповіді:


0

Ви можете використовувати цикл підрахунку за довжиною значення, яке потрібно розділити на цифри, і ввести цифри в масив, наприклад:

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

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

Це буде надруковано:

1
2
5
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.