【问题标题】:TCL data capture issue - expectTCL 数据采集问题 - 期待
【发布时间】:2011-10-22 15:10:23
【问题描述】:

我想知道如何用 TCL 获取上一条命令的输出。

我现在有以下结构:

exp_send -i $spawn_id "show port-access supplicant\r"

set buff ""
expect -regexp {".*"}
    expect -regexp ".*#" {send "show port-access supplicant\r"}
expect eof

*此时的命令返回正确的信息,但我不知道如何将它存储到变量中。

我正在阅读有关 expect_out 的信息,但我无法让它工作!

【问题讨论】:

    标签: tcl expect


    【解决方案1】:

    您可以使用期望缓冲区来执行此操作。完成你的 2 场比赛:

     expect -regexp ".#" {send "show port-access supplicant\r"}
     expect -regexp ".#"; #Match the prompt again after the device output returns
    

    然后试试:

     puts $expect_out(buffer)
    

    【讨论】:

    • 嗨,这是我得到的。我得到以下输出: 1234 - end Client_A# - 123 Client_A# 我正在使用 puts "1234 - $expect_out(buffer) - 123"... 我不知道为什么我没有得到正确的信息输出:Port Access Supplicant Status Supplicant Held Auth Start Max Port State Period Timeout Period Start Port Identity 1 Authenticated 60 30 30 3 User @niall-byrne
    • 我所有的问题都是正则表达式。我现在正在调整参数,谢谢你给我亮光!
    猜你喜欢
    • 2012-07-15
    • 1970-01-01
    • 2020-04-18
    • 1970-01-01
    • 2011-12-05
    • 2022-12-10
    • 1970-01-01
    • 2023-01-29
    • 1970-01-01
    相关资源
    最近更新 更多