自动 telnet linux,Linux操作系统下三种方式实现自动Telnet

一、Shell实现,文件名:autotelnet.sh,代码如下:

(sleep 1;echo "root";sleep 1;echo

"123456";sleep 1;echo "en";sleep 1;echo "1qazse4";sleep 1;echo

"conf t";sleep 1;echo "int fa0/1";sleep 1;echo "switchport mode

multi";sleep 1;echo "end";sleep 1;echo "exit") | telnet

10.32.17.10

二、Expect来实现,文件名:autotelnet.exp,代码如下:

#!/usr/bin/expect

set timeout 100

set TERM xterm

set SERVER "10.32.17.10"

set USER "root"

set PASSWD "123456"

spawn telnet

expect "telnet> "

send "open $SERVERr"

expect "Username:"

send "$USERr"

expect "Password:"

send "$PASSWDr"

expect

"longjiang-zero>"

send "enr"

expect "Password:"

send "$PASSWDr"

expect "longjiang-zero#"

send "conf tr"

expect "longjiang-zero(config)#"

send "int fa0/1r"

expect "longjiang-zero(config-if)#"

send "switchport mode multir"

expect "longjiang-zero(config-if)#"

send "endr"

expect "longjiang-zero#"

send "exitr"

interact

三、Python来实现,文件名:autotelnet.py,代码如下:

#!/usr/bin/python

import telnetlib

host = ''10.32.17.10''

user = ''root''

password = ''123456''

commands = [''en'',password,''conf

t'',''int fa0/1'',''switchport mode multi'',''end'']

tn = telnetlib.Telnet(host)

tn.read_until("Username:")

tn.write(user + "n")

tn.read_until("Password:")

tn.write(password + "n")

for command in commands:

tn.write(command+''n'')

tn.write("exitn")

print tn.read_all()

print ''Finish!''

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值