主机之间的shell中的for循环(使用ssh)

时间:2016-01-28 14:12:55

标签: shell ssh

我有一个for循环来浏览我的其他亚马逊实例:

#!/bin/bash
LIST="ec2xxxA.compute.amazonaws.com ec2xxxB-central-1.compute.amazonaws.com"
SSHKEY="ssh -tt -i key.pem centos@"

  for i in $LIST; do
    ${SSHKEY}$i hostname

现在我尝试遍历我的列表并打印2个亚马逊实例的主机名。 它适用于第一个。但是在循环之后它不会更进一步:。

./script.sh
ip-172-xx-xx-01
Connection to ec2-xxxA-1.compute.amazonaws.com closed.
Last login: Thu Jan 28 14:09:48 2016 from ip-172-xx-xx-01.compute.internal
[centos@ip-172-xx-xx-01 ~]$ 

因为你可以看到它告诉我它关闭了连接,但在关闭连接后,提示再次显示主机的IP。 我必须输入exit,然后再进入下一个主机(我也必须退出)。

在脚本中添加exit没有帮助。然后它就是在第一个主持人之后停止所有事情。

1 个答案:

答案 0 :(得分:0)

尝试从命令中删除-tt选项。