首先,我已经阅读了问题for loop with multiple conditions in Bash scripting,但它不适用于我打算做的事情。在以下脚本中,第一个for循环将f数组数量分配给一对变量(CON_PERC和CON_NAME)
f=0
for i in "${container[@]}"; do
CON_PERC[$f]=$(awk '{print int($2+0)}' <<< ="${container[$f]}") #CON_PERC[0] = 2; CON_PERC[1] = 0
CON_NAME[$f]=$(awk '{print $1}' <<< "${container[$f]}") #CON_NAME[0] = hi; CON_NAME[1] = bye
((f++))
done
我现在需要做的是在一个单独的循环中,检查两个变量的每个数组并打印它们。最好的方法是什么?
我很难做到的是这样>>
e=0
for ((x in "$CON_PERC[@]" && z in "$CON_NAME[@]")); do
echo "${CON_NAME[$e]} ${CON_PERC[$e]}"
((e++))
done
但似乎for((“ $ CON_PERC [@]中的i和” $ CON_NAME [@]“中的&& e)
在bash中无效。问题是,解决此问题的最佳方法是什么?我应该专门使用嵌套循环还是采用其他方法?
首先,我已经阅读了Bash脚本中具有多个条件的循环问题,但不适用于我打算做的事情。在以下脚本中,第一个for循环分配f数量的...
您需要像这样嵌套它们(在示例中未进行嵌套)
这里您有一种方法: