Skip to main content

思科接口范围调节器

项目描述

自述文件

这个 repo 包含接受 cisco config 并转换其接口配置并制作远程接口的函数,因为它更紧凑。它将每个接口配置块与其他接口配置块进行比较,并仅提取相似的配置块。它还缩短了 cisco 接口名称。例如:它打印GigabitEthernet1/0/1Gi1/0/1

安装

运行以下命令进行安装:

pip install rangify

用法

from rangify import ranger

ranger("cisco_config.txt") # or ranger(interfaces_dict)

它可以接受 2 种类型的输入。


来自文件的文本配置


假设test_config.txt包含以下文本(缩写,全文请检查test_config.txt文件)

!
interface GigabitEthernet1/0/1
 ...any text config block..
!
interface GigabitEthernet1/0/2
 ...any text config block..
!
interface GigabitEthernet1/0/3
 ...any text config block..
!

然后以下函数将打印到屏幕更紧凑的范围版本的配置:

ranger("filename.txt")

输出:

interface range Gi1/0/1-3
 ...any text config block...

接口作为字典的字典


这将字典字典作为输入。字典的键是接口名称,值是配置字典。并返回相同的字典结构,但这次键是折叠/范围形式。下面的例子。

# input dictionary
sample_ints = {
        "GigabitEthernet1/0/1": {},
        "GigabitEthernet1/0/2": {},
        "GigabitEthernet1/0/4": {"mode": "access"},
        "GigabitEthernet3/4/2": {"mode": "access"},
        "GigabitEthernet3/4/3": {"mode": "access"},
        "GigabitEthernet3/5/3": {"mode": "trunk"},
        "GigabitEthernet3/6/3": {"mode": "trunk"},
}
# range them all
print(ranger(interfaces))

输出:

    {'range Gi1/0/1-2': {}, 
    'range Gi1/0/4, Gi3/4/2-3': {'mode': 'access'}, 
    'range Gi3/5/3, Gi3/6/3': {'mode': 'trunk'}}

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

rangify-0.0.8.tar.gz (6.4 kB 查看哈希

已上传 source

内置分布

rangify-0.0.8-py3-none-any.whl (6.9 kB 查看哈希

已上传 py3