我一直在尝试通过以下程序运行以下命令,但它们正在获取整个配置文件,而不是 match 命令的结果。PYEZ 不支持匹配功能吗?
显示配置 | 展示套装| 匹配 RI- 显示配置 | 展示套装| 匹配池- 显示配置 | 展示套装| 匹配服务-
我的目的是获取 match RI 命令的 set 命令行,将 set 替换为 delete 并加载到设备。
请帮忙。
尝试:log.debug("收集路由器配置")
now = datetime.datetime.now()
datets = str(now.year) + str(now.month) + str(now.day) + "_" + str(now.hour) + str(now.minute) + str(now.second)
log.debug("timestamp set to " + str(datets))
if (format == "cnf"):
cnf = dev.cli("show configuration", warning=False)
FileName = rtName + "." + datets + ".cnf"
log.debug("The configuration will be stored in filename as %s", FileName)
# saving the configuration into a CNF file
f = open(FileName, 'w+')
f.write(cnf)
f.close
return FileName
elif (format == "set"):
cnf = dev.cli("show configuration | display set | match pool-", warning=False)
FileName = rtName + "." + datets + ".txt"
log.debug("The configuration will be stored in filename as %s", FileName)
# saving the configuration into a Text file
f = open(FileName, 'w+')
f.write(cnf)
f.close
return FileName
else: # defaults to XML
cnf = dev.rpc.get_config()
FileName = rtName + "." + datets + ".xml"
log.warn("The configuration will be stored in filename as %s", FileName)
# saving the configuration into a XML file
f = open(FileName, 'w+')
f.write(etree.tostring(cnf))
f.close
return FileName
except Exception as e:
log.error("could not collect the router configuration via RPC")
log.error(e.message)
return None
# if the execution gets here, the return will be None
return FileName