我试图找出如何在expect中解析命令的输出,然后设置它作为变量返回的内容。基本上我有一个看起来像列表IE的命令输出:
ONEA
ONEB
ONEB
TwoA
TwoB
TWOC
ThreeA
ThreeB
ThreeC
基本上我需要它来找到所有的值,让我们说以One开头,然后对每个实例运行另一个命令。像一个统计OneA和打印输出然后Stat OneB
然后Stat OneC ...
希望这样做。
由于
戴夫
答案 0 :(得分:1)
可能更容易使用shell管道:
send -- "yourCommand | grep '^One' | xargs -L 1 stat\r"
期待,这将是:
send -- "yourCommand\r"
expect -re $thePrompt
foreach line [split $expect_out(buffer) \n] {
if {[string match {One*} $line]} {
send -- "stat $line\r"
expect -re $thePrompt
}
}