Trích xuất từng chữ số của biến và lưu trữ dưới dạng biến mới trong bash


0

Tôi có một biến là một số từ 1 - vô cùng. Hãy nói rằng số đó là 40. Tôi cần lưu trữ 4 dưới dạng một biến và 0 là một biến. Vì số có thể tăng quá 2 chữ số, giả sử số đó là 125. Tôi cần lưu trữ 1 dưới dạng biến, 2 là biến và 5 là biến.
Làm thế nào tôi có thể làm điều này với bash?


Cũng là một mảng có thể?
Cyrus

@Cyrys - Hoàn toàn đúng.
OB7

Câu trả lời:


0

Bạn có thể sử dụng một vòng lặp đếm qua chiều dài của giá trị bạn muốn chia thành các chữ số và đặt các chữ số thành một mảng, ví dụ:

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

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

Điều này sẽ in:

1
2
5
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.