我有一个期望脚本,将与交换机关联的所有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"
Run Code Online (Sandbox Code Playgroud)
一切正常,但是如果地址过多,交换机将显示以下内容:
-更多-,下一页:空格,下一行:Enter,退出:Control-C
当然可以有N页,其中N蜂未知。
我应该怎么做?
send -- "show mac \r"
expect {
"MORE --, next page" {send -- " "; exp_continue}
"*?2626#*" {send -- "exit \r"}
}
Run Code Online (Sandbox Code Playgroud)