我正在使用awk拆分来拆分字符串并将其存储到数组中。我不能在脚本中使用该数组。它显示空阵列。使用awk将拆分字符串存储到数组中
echo $pre_session_cmds | awk '{split($0,cmd_array,"};")} END {for(n in cmd_array){ print cmd_array[n] }}'
for element in "${cmd_array[@]}"
do
echo "command is $element"
done
问题: 打印使用awk印刷元件正确,但访问在循环显示为空
该数组'cmd_array'只存在于awk进程中。它不能像你似乎正在做的那样从shell脚本引用。您需要在awk中引用它,或者将它从awk打印到另一个bash中的数组中。 –