我正在尝试在包含在数组中的数组中创建多维。
tests=("'0' '1 2'" "'4' '5 6'")
Run Code Online (Sandbox Code Playgroud)
在测试中的每个数组中,我想要子数组。使用第一个数组“'0''1,2'”,创建另一个 for 循环以遍历子数组的内容。
Nah*_*eul 15
从 bash 4.3 开始。(3 个级别,第一个仅包含演示的一个元素):
arr01=(0 '1 2')
arr02=(4 '5 6')
arr1=(arr01 arr02)
arr=(arr1)
declare -n elmv1 elmv2
for elmv1 in "${arr[@]}"; do
for elmv2 in "${elmv1[@]}"; do
for elm in "${elmv2[@]}"; do
echo "<$elm>"
done
done
done
Run Code Online (Sandbox Code Playgroud)
4.3之前
arr01=(0 '1 2')
arr02=(4 '5 6')
arr1=('arr01[@]' 'arr02[@]')
arr=('arr1[@]')
for elmv1 in "${arr[@]}"; do
for elmv2 in "${!elmv1}"; do
for elm in "${!elmv2}"; do
echo "<$elm>"
done
done
done
Run Code Online (Sandbox Code Playgroud)