本文整理汇总了Python中ciscoconfparse.CiscoConfParse.find_blocks方法的典型用法代码示例。如果您正苦于以下问题:Python CiscoConfParse.find_blocks方法的具体用法?Python CiscoConfParse.find_blocks怎么用?Python CiscoConfParse.find_blocks使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ciscoconfparse.CiscoConfParse
的用法示例。
在下文中一共展示了CiscoConfParse.find_blocks方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: process_file
# 需要导入模块: from ciscoconfparse import CiscoConfParse [as 别名]
# 或者: from ciscoconfparse.CiscoConfParse import find_blocks [as 别名]
def process_file(fname):
with open(fname) as f:
print '*** %s ***' % fname
parse = CiscoConfParse(f)
blockhead = parse.find_blocks('voice translation')
for item in blockhead:
print item.rstrip()
示例2: MainFunc
# 需要导入模块: from ciscoconfparse import CiscoConfParse [as 别名]
# 或者: from ciscoconfparse.CiscoConfParse import find_blocks [as 别名]
def MainFunc(filelist,filepath,protocol,linstr,outputfolder,label_list):
mydict,mylist=returnAttributes(protocol,label_list)
print("-----------------------1")
print(mydict)
print("-----------------------2")
print(mylist)
mylist3=mylist[:]
for k,v in mydict.items():
if '/' in v:
vv=v.split('/')
for e in vv:
if len(e)>0:
mylist3.append(e)
#filelist=os.listdir(filepath)
for eachfile in filelist:
if '.DS' in eachfile:
continue
with open(ProjectPath+"/"+outputfolder+"/input_"+linstr,"w")as fout:
pass
for eachfile in filelist:
if '.DS' in eachfile:
continue
with open(filepath+'/'+eachfile)as fin:
linsout=[]
for eachline in fin:
if "Authentication Data Removed" in eachline or '/*' in eachline:
#print(eachline)
pass
else:
linsout.append(eachline)
with open(filepath+'/'+eachfile,"w")as fout:
fout.writelines(linsout)
if len(eachfile)>0:
print(eachfile)
protocol2=r'[ \t]*'+protocol+'.*$'
linstr2=r'[\s]*'+linstr+'[\s]*$'
parse_file = CiscoConfParse(str(filepath+'/'+eachfile))
#val_block0=parse_file.find_blocks(protocol2,exactmatch=False,ignore_ws=True)
val_children0=parse_file.find_all_children(protocol2,exactmatch=False,ignore_ws=True)
val0=val_children0
#print("val_children000000")
#print(val_children0)
if str(linstr)!="input patterns":
parse0 = CiscoConfParse(val0)
val_block=parse0.find_blocks(linstr2,exactmatch=False,ignore_ws=True)
#val_children=parse_file.find_children_w_parents(parentstr,linstr,ignore_ws=True)
val_children=parse0.find_all_children(linstr2,exactmatch=False,ignore_ws=True)
print("val_block...")
print(val_block)
print('val_children...')
print(val_children)
val1=val_block+val_children
else:
val1=val_children0
#val1=val_children
#print("val1///")
#print(val1)
parse1 = CiscoConfParse(val1)
val2=[]
for each in mylist:
#print("each............................."+each)
each2=r'[\s]*'+each+'[\w\s;\[\]\-\.]+.*'
temp=parse1.find_all_children(each2,exactmatch=True,ignore_ws=True)
val2.extend(temp)
#val=parse.find_all_children('group CONNECTOR',exactmatch=False,ignore_ws=True)
#print('val2....')
#print(val2)
val3=[]
#print("mylist3........")
#print(mylist3)
for each in val2:
itema=each.replace('{','').replace('#','').strip()+','
if islistcontainstr(mylist3,each) and not itema in val3:
#print("+++++++++++++++++++++++++++++++++++++++++++++++++++++"+each)
val3.append(itema)
Output=[]
outputtab=0
for tab in range(len(mylist)):
Output.append([])
for k,v in mydict.items():
matchlist=[]
if v=="int":
pattern=re.compile(r"[\s]*"+k+"[\s]*[\d]+")
for each in val3:
#print(each)
matchlist.extend(pattern.findall(each))
#print("222222222222222222222222222")
#print(matchlist)
#print(val3)
#.........这里部分代码省略.........
示例3: CiscoConfParse
# 需要导入模块: from ciscoconfparse import CiscoConfParse [as 别名]
# 或者: from ciscoconfparse.CiscoConfParse import find_blocks [as 别名]
#!/usr/bin/python
from ciscoconfparse import CiscoConfParse
parse = CiscoConfParse("conf.txt")
basic_search = parse.find_blocks("trunk")
print basic_search
# Sanitize the output to replace , with a new line
f = open("output.txt", "r")
filedata = f.read()
f.close()
newdata = filedata.replace(", ", "\n")
f = open("output.txt", "w")
f.write(newdata)
f.close()
# Sanitize he output for '
f = open("output.txt", "r")
filedata = f.read()
f.close()
newdata = filedata.replace("'", "")
f = open("output.txt", "w")
f.write(newdata)
f.close()
# Sanitize he output for [
f = open("output.txt", "r")
filedata = f.read()
f.close()
newdata = filedata.replace("[", "")
示例4: CiscoConfParse
# 需要导入模块: from ciscoconfparse import CiscoConfParse [as 别名]
# 或者: from ciscoconfparse.CiscoConfParse import find_blocks [as 别名]
#cisco centric scripts for parsing out config-------
#------------------------------------
from ciscoconfparse import CiscoConfParse
parse = CiscoConfParse('vg1.router.txt')
blockhead = parse.find_blocks('voice translation')
for item in blockhead:
print item
#-------------------------------------