我有一个期望脚本,将包含与交换机关联的所有 mac 地址的列表放入文件中。
#!/usr/bin/expect -f
spawn telnet 192.168.20.222
match_max 10000
expect "*?to continue*"
send -- "\r"
send -- "show mac \r"
expect -- "*?2626#*"
send -- "exit \r"
expect -- "*?2626>*"
send -- "exit \r"
expect "*?y/n*"
send -- "y \r"
一切正常,但如果地址太多,交换机会显示如下内容:
-- MORE --, next page: Space, next line: Enter, quit: Control-C
当然可以有N个页面,其中N个是未知的。
我应该怎么做?
最佳答案
send -- "show mac \r"
expect {
"MORE --, next page" {send -- " "; exp_continue}
"*?2626#*" {send -- "exit \r"}
}
关于linux - EXPECT脚本,如何处理多页输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10064936/