我有一个变量,它是一个从 1 到无穷大的数字。假设这个数字是 40。我需要将 4 存储为变量,将 0 存储为变量。由于这个数字可以超过 2 位数字,假设这个数字是 125。我需要将 1 存储为变量,将 2 存储为变量,将 5 存储为变量。
我该如何用 bash 做到这一点?
答案1
您可以使用计数循环来计算要拆分为数字的值的长度,然后将数字放入数组中,例如:
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