我是新手python学习者并且遇到了这个问题...我很感激你的任何专家建议和帮助做一个python脚本,可以通过查看特定的分隔符来读取和搜索配置文件一组/一组线如下。
开始分隔符:^vpls\s\d+
结束分隔符:^!$
##This is an example subset of an Alcatel router config:
!
vpls xxx
sdp 1.1.1.1
backup
lsp LSP-1
... #some other settings here (not needed)
exit
sdp 2.2.2.2
lsp LSP-2
... #some other settings here (not needed)
exit
!
vpls yyy
sdp 1.1.1.1
backup
lsp LSP-1
... #some other settings here (not needed)
exit
sdp 2.2.2.2
lsp LSP-2
... #some other settings here (not needed)
exit
!
我想要实现的目标,请注意在导出到csv后,备份将在序列的最后一项上传输以进行标准格式化:
vpls xxx : sdp 1.1.1.1 : lsp LSP-1 : backup
vpls xxx : sdp 2.2.2.2 : lsp LSP-2 :
vpls yyy : sdp 1.1.1.1 : lsp LSP-1 : backup
vpls yyy : sdp 2.2.2.2 : lsp LSP-2 :
答案 0 :(得分:0)
我制作了这个剧本。在router_cfg
中,我存储了您提供的输出。
r = re.compile('(?:(vpls\w+)\s)?(sdp [\w\.]+)\s(?:(backup)\s)?(lsp [\w-]+)')
for line in r.findall(router_cfg):
if line[0]: vpls = line[0]
print ' : '.join([vpls, line[1],line[3],line[2]])
如果有什么不明白的地方,请问。