telnetlib模块学习

python有第三方telnet模块,这样就不用登录到每台交换机上查询。

这里有个连接盛科交换机的example:

#!/usrbin/env python
import telnetlib

def do_telnet(Host, password,  commands):
    tn = telnetlib.Telnet(Host, port=23, timeout=10) # 初始化一个tn实例
#    tn.set_debuglevel(2)        # 设置debug级别

    tn.read_until(‘Password: ‘)   # 输入密码
    tn.write(password + ‘\n‘)

    tn.read_until("#")            # 输入你要查询的命令
    for command in commands:
        tn.write(command + "\n")
    time.sleep(5)
#    tn.write("quit\n")
    
    res = tn.read_very_eager()
    print res
    tn.close()
if __name__==‘__main__‘:
    Host = ‘172.16.100.****‘
    password = ‘9*****‘
    commands = [‘show interface trunk‘]
    do_telnet(Host, password, commands)
 
    
执行结果:
[[email protected] home]# python test.py
 show interface trunk

Port      Encapsulation  Status        Native VLAN
--------------------------------------------------
eth-0-1   802.1q         trunking      100
eth-0-2   802.1q         trunking      100
eth-0-3   802.1q         trunking      100
eth-0-4   802.1q         trunking      100
eth-0-5   802.1q         trunking      100
eth-0-6   802.1q         trunking      100
eth-0-9   802.1q         trunking      100
eth-0-48  802.1q         trunking      100

Port      VLANs is allowed on trunk
-------------------------------------------------------------------
eth-0-1   100,102-130
eth-0-2   100,102-130
eth-0-3   100,102-130
eth-0-4   100,102-130
eth-0-5   100,102-130
eth-0-6   100,102-130
eth-0-9   100,102-130
eth-0-48  1,99-130
inter-openstack#

这里需要注意的是,关于telnetlib模块中几种read方法的区别:

参考链接:https://docs.python.org/2/library/telnetlib.html

http://python.u85.us/viewnews-359.html

时间: 2024-11-13 09:36:59

telnetlib模块学习的相关文章

常用模块学习(一)

常用模块学习(一) 常用模块学习-小鸡汤 推荐节目-晓说: <晓说>是2012年3月高晓松开始主持的网络脱口秀节目 每期由主持人高晓松谈论一个热门话题,打造视频化的"高晓松专栏文章" 常用模块学习-模块的种类和导入方法 ''' 1.什么是模块? 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方

Python 模块学习

模块学习: http://wsyht90.blog.51cto.com/9014030/1845737 1.getpass 2.os 3.sys 4.subprocess 5.hashlib 6.json 7.pickle 8.shutil 9.time 10.datetime 11.re 12.random 13.configparser 14.traceback 15.yaml 16.itertools 17.logging 18.urllib.urllib2 19.paramiko ###

python模块学习(2)——re模块

正则表达式并不是python的一部分,正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大.得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同:但不用担心,不被支持的语法通常是不常用的部分.如果已经在其他语言里使用过正则表达式,只需要简单看一看就可以上手了. 下图展示了使用正则表达式进行匹配的流程:  正则表达式的大致匹配过程是:依次拿出表达式和文本中的字符

Node.js笔记(0003)---Express框架Router模块学习笔记

这段时间一直有在看Express框架的API,最近刚看到Router,以下是我认为需要注意的地方: Router模块中有一个param方法,刚开始看得有点模糊,官网大概是这么描述的: Map logic to route parameters. 大概意思就是路由参数的映射逻辑 这个可能一时半会也不明白其作用,尤其是不知道get和param的执行顺序 再看看源码里面的介绍: Map the given param placeholder `name`(s) to the given callbac

openoffice osl模块学习1

由" can i get a char* , please?"看起: Just barely. OO.o has at least six string wrappers, although the C implementations are of little interest: rtl_String - sal/inc/rtl/string.h"Normal" string plus reference counting. rtlstring->buffe

Day5 - Python基础5 常用模块学习

Python 之路 Day5 - 常用模块学习 本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configparser hashlib subprocess logging模块 re正则表达式 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,

python之web模块学习-- urllib

准备写一些列的 python之web模块学习,基本上涉及常用的的web模块,包括 urllib.urllib2.httplib.urlparse.requests,现在,开始我们的第一个模块的学习吧. 1  urllib简介 python urllib 模块提供了一个从指定的URL地址获取网页数据,然后对其进行分析处理,获取我们想要的数据. 2  常用方法 2.1  urlopen  -- 创建一个类文件对象 为读取指定的URL help(urllib.urlopen) urlopen(url,

Python subprocess模块学习总结

从Python 2.4开始,Python引入subprocess模块来管理子进程,以取代一些旧模块的方法:如 os.system.os.spawn*.os.popen*.popen2.*.commands.*不但可以调用外部的命令作为子进程,而且可以连接到子进程的input/output/error管道,获取相关的返回信息 一.subprocess以及常用的封装函数 运行python的时候,我们都是在创建并运行一个进程.像Linux进程那样,一个进程可以fork一个子进程,并让这个子进程exec

Edison 蓝牙模块 学习笔记

Edison 蓝牙模块 学习笔记 固定链接:https://www.zybuluo.com/SiberiaBear/note/212527 本笔记基于Intel Edison Bluetooth Guide官方手册完成,如有错误敬请指出. 由于个人能力有限,到最后几节内容一直拖着没有翻译,以后会补上,自己也是边学习边翻译的,还请见谅. Edison 蓝牙模块 学习笔记 基本介绍 Linux集成蓝牙 1 The bluetoothd daemon 2 Configuration 3 Applica