使用bash将阵列传递到远程服务器
我在bash脚本中有一个包含ip地址的数组。我一个接一个地使用ssh连接到所有服务器,并使用heredoc在每台服务器上运行多个命令。从每个服务器,我想再次ssh到所有服务器并运行一些命令。下面是一些代码使用bash将阵列传递到远程服务器,bash,shell,Bash,Shell,我在bash脚本中有一个包含ip地址的数组。我一个接一个地使用ssh连接到所有服务器,并使用heredoc在每台服务器上运行多个命令。从每个服务器,我想再次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
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
“${IP_地址[@]}”中i的;做
ssh-i“$LOCAL\u PEM\u FILE”“$USER”@“$i”bash此处文档块中的数组不需要双引号:
for i in "${IP_ADDRESSES[@]}"; do
ssh -i "$LOCAL_PEM_FILE" "${USER}@${i}" bash <<-HERE
for j in ${IP_ADDRESSES[@]}; do
echo \$j
done
HERE
done
这会在每个数组元素之间添加单引号。此处文档块中的数组不需要双引号:
for i in "${IP_ADDRESSES[@]}"; do
ssh -i "$LOCAL_PEM_FILE" "${USER}@${i}" bash <<-HERE
for j in ${IP_ADDRESSES[@]}; do
echo \$j
done
HERE
done
这在每个数组元素之间添加了一个引号。我今天学到了一些全新的东西!Stackoverflow从未停止让我惊讶,让我意识到还有更多的东西要知道。今天我学到了一些全新的东西!Stackoverflow从不停下来让我惊讶,让我意识到还有很多东西需要知道。