存储expect脚本的所有命令的输出

时间:2014-05-20 05:30:11

标签: tcl expect

我对TCL脚本有点新。我编写了一个expect shell脚本,其中有多个expect-send命令。

我开始知道expect_out(缓冲区)只存储上一个命令的输出。但是我的目标是存储脚本中使用的所有命令的输出。

我是怎么做到的?

由于

1 个答案:

答案 0 :(得分:1)

对每个命令使用$expect_out(buffer),如下所示:

send "show interface\r"  ; # 1st command
expect "*#"
set a $expect_out(buffer)
send "show vlan\r"  ; # 2nd command
expect "*#"
set b $expect_out(buffer)
send "show ip interface brief\r"  ; # 3rd command
expect "*#"
set c $expect_out(buffer)

在这里,您可以看到捕获到各个变量的所有命令输出。

puts $a
puts $b
puts $c