网络工程师工具:python批量登陆设备执行命令

诉求:网络工程实施过程中,设备量多,需要进行日常的信息采集,命令执行,数据分析等都需要花费较多人力,因此通过脚本的方式来实现更加方便高效

前提:安装好python3.0+,并通过pip 安装xlrd、paramiko(cmd下执行pip install xlrd、pip install paramiko

执行不了的话,要在pip的绝对路径下。

步骤一:安装python以及对应库

 

python版本3.0

模块  paramiko  xlrd

安装方式  pip install paramiko 和 pip install xlrd

 

步骤二:填写设备信息表

1、两种登陆:Telnet 和 SSH2  端口要选对

2、参数列,用于执行命令会变化的数据

3、选择N则不执行对应设备

 

 

4、此处%s0表示上图G0/0/0,%s1表示上图G0/0/1以此类推

5、命令都要用EOF结束

 

 

 

步骤三:执行脚本

1、输入工程名后回车,等待执行完成

 

 

2、之后进入log文件夹

 

 

3、找到刚才输入的工程名(对应文件夹)

 

 

4、点击文件夹进入即可查看对应设备的执行log

 

二、在线或离线筛选数据

这里主要演示离线数据的处理方式

一、填写excel表信息,输入要过滤的数据信息

可以使用正则表达式匹配数据,

如:(GigabitEthernet.*) transceiver information: “.*”代表任意字符,在括号中的表示需要显示的数据,如果不加括号将会输出全部匹配信息。

如果C列填写了First,则表明输出的数据需要进行换行

 

二、执行

如需要执行以下目录下的所有文件,将其筛选后合并

执行如下文件 offline_process_data.py 即可

如下为筛选出来的数据

生成如下对应的文件

 

 

文件内容如下:

 

 

代码下载链接:https://github.com/keyongzeng/kmulticonfigurationv2.git

 

posted @ 2017-11-28 15:01  ke_yongzeng  阅读(1332)  评论(1编辑  收藏  举报