我有一个脚本,可以在不同的线卡parallay中执行一些命令,问题是脚本在6个线路卡上成功运行但是为了更多,它说send: spawn id exp10 not open
。
我正在telnet到脚本中的同一个ip然后连接到线卡,这里为每个会话脚本创建相同的期望spawn id可能是因为它说spaw id未打开,因为会话可能有过期的一些线卡已过期。
但我放了一些睡眠以确保没有后台会话到期仍然我看到超过6会话期望无法在后台进行。
脚本就是这个 -
for {set current_card 1} {$current_card <= $cv_total_cards} {incr current_card} {
puts "Triggering execution on Card $current_card "
eval exec ./exeCommandsOnLCCards.tcl "some card specific arguments" >/dev/null &
sleep 5
}
}
cat exeCommandsOnLCCards.tcl
spawn telnet <telnet_ip>
expect "'^]'"
sleep 2
expect "login: "
send -- "root\r"
expect "assword: "
send -- "<password>\r"
expect "#"
如果有人遇到类似的问题,请告诉我。
答案 0 :(得分:0)
请忽略这一点。脚本没有问题。 它是由于路由器的安全限制。如果我增加了允许的并行telnet会话,它就开始工作了。