在shell脚本中使用expect实现telnet登陆路由器

查看原文:http://www.sijitao.net/1567.html
Expect是基于TCL的,作为一个脚本语言,expect能在无需管理员参与的情况下实现自动交互(比如passwd,fsck,telnet等)。expect也能用于自动测试一些应用程序。

这里博主以登陆路由器为例,先简单了解expect实现telnet自动登陆路由器的过程。当然也可以使用expect脚本ssh登陆服务器进行自动化管理。

[code language="shell"]

#!/usr/bin/expect

spawn telnet 192.168.1.1
expect "*Username:*"
send "yourname\r"
expect "*Password:*"
send "yourpwd\r"

send "en\r"
expect "*password:*\r"
send "yourpwd\r"

send "sys show\r"
send "exit\r"

expect eof

[/code]

运行测试一切正常。

spawn telnet 192.168.1.1
Trying 192.168.1.1...
Connected to 192.168.1.1.
Escape character is '^]'.
Username:yourname
Password:

TP-LINK > en
Enter password:
TP-LINK # sys show
CPU Used Rate: 17%

TP-LINK > exit
Connection closed by foreign host.

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值