我在bash脚本中有一个包含IP地址的数组。我一个接一个地对它们进行ssh,并使用here-doc在每个服务器上运行多个命令。从每台服务器,我想再次对所有服务器执行ssh,并运行一些命令。下面是一些代码。
for i in "${IP_ADDRESSES[@]}"; do
ssh -i "$LOCAL_PEM_FILE" "$USER"@"$i" bash << HERE
for j in "${IP_ADDRESSES[@]}"; do
echo \$j
HERE
done
我希望$J是我可以一个接一个迭代的所有IP的列表,就像我在第一个for循环中对我所做的那样。相反,j以一个包含所有IP的空格分隔字符串的形式出现。
有人遇到过类似的问题吗?任何帮助都非常感谢。