我想在我的脚本中使用Expect方法,所以我在脚本中使用了这个命令
# !/usr/bin/expect
现在,在使用此命令后,我无法声明任何数组,甚至无法使用ECHO命令
完整代码
# !/usr/bin/expect
declare -a arr=("ip1" "ip2")
for i in "${arr[@]}"
do
spawn ssh myhost@i
send "exit\n"
done
整个数组声明和FOR循环抛出错误,如命令名无效,我无法使用ECHO命令。当我在不导入的情况下尝试ECHO命令时,除非一切正常。
1条答案
按热度按时间wooyq4lh1#
第一行声明您的脚本是Expect脚本,并且Expect脚本使用TCL脚本语言。您所做的是在同一脚本中混合使用bash和tcls,这就是出现错误消息的原因。在TCL中设置列表并循环很容易: