|
不支持Flash
|
|
|
|
Linux操作系统下三种方式实现自动Telnethttp://www.sina.com.cn 2007年09月26日 11:51 赛迪网
作者:kit 一、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!''
【发表评论】
不支持Flash
|