【发布时间】:2018-11-07 18:29:40
【问题描述】:
我正在努力通过 telnet/expect 执行命令。
set send_slow {500 .5}
send -s -- "show slot *\r"
expect {
".*>" {
send -s -- "y\r"
exp_continue
}
".*#\s"
}
send -s "who\r"
expect "# "
send -s "alm\r"
expect "# "
send -s -- "logout\r"
show slot 命令在插槽中打印卡。由于分页用户被要求继续。执行后显示提示NODE2-1#,我想执行命令who。
我得到的是:
2/36 PF Empty Up Down UEQ
2/37 FAN FAN Up Up
2/38 Empty Empty Down Down UAS UEQ
2/39 Empty Empty Down Down UAS UEQ
25/1 SFD40 SFD40 Up Up
Node2-1#<br> Node2-1# who
Session Username Date Terminal
-------------------------------------------------------------------------------
116 (cli tel) * admin May 29 06:57 XX.X.XX.XX
Node2-1# almlogout
Alarm Status: Critical-3 Major-0 Minor-0
如您所见,第一个提示为空,第二个提示有一个命令。执行它需要几秒钟。
此外,可以看到,在提示符下粘贴了命令almlogout。这两个是单独的命令 -> alm 和 logout。但是,它们是粘贴在一起的。
问题是 - 如何在没有延迟的情况下在提示符下执行命令,第二个问题 - 如何分隔两个命令
【问题讨论】: