CN112131432A - 数据网络设备的命令行多叉树获取方法及装置 - Google Patents
数据网络设备的命令行多叉树获取方法及装置 Download PDFInfo
- Publication number
- CN112131432A CN112131432A CN201910554820.8A CN201910554820A CN112131432A CN 112131432 A CN112131432 A CN 112131432A CN 201910554820 A CN201910554820 A CN 201910554820A CN 112131432 A CN112131432 A CN 112131432A
- Authority
- CN
- China
- Prior art keywords
- command line
- command
- node
- nodes
- tree
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9027—Trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/453—Help systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种数据网络设备的命令行多叉树获取方法及装置,所述方法包括:对获取的数据网络设备的第一层命令行节点的值进行压栈保存,并依次遍历第一层命令行节点中的每个命令行节点,对获取的第二层命令行节点的值进行压栈保存,依此类推,获取整个命令行多叉树的所有层级和所有命令行节点;在获取命令行多叉树时,对命令行多叉树的完整路径中的节点,采用出栈弹出的方式,从最下层命令行节点追溯到最上层命令行节点,生成一条完整的命令行并保存,最终获取整个命令行多叉树的所有命令行。本发明能够通过界面查询到具体的命令配置实例,提高了使用效率,缩短了熟悉设备命令行的过程,提高了数据网络产品的易用性和可维护性。
Description
技术领域
本发明涉及数据网络设备领域,尤其涉及一种数据网络设备的命令行多叉树获取方法及装置。
背景技术
在现有技术中,数据网络设备大部分都支持命令行输入。命令行是用户和维护人员使用和维护设备的重要手段。但是大部分数据网络设备的命令手册非常庞大,而且命令行语句表达式比较晦涩难懂。特别在很多对接应用场景下,用户对某设备的命令行接口不熟悉,导致配置和使用的过程中带来很大困难。
发明内容
本发明实施例提供一种数据网络设备的命令行多叉树获取方法及装置,用以解决现有技术中用户对某设备的命令行接口不熟悉而导致的配置和使用困难的问题。
本发明实施例提供一种数据网络设备的命令行多叉树获取方法,包括:
对获取的数据网络设备的第一层命令行节点的值进行压栈保存,并依次遍历第一层命令行节点中的每个命令行节点,对获取的第二层命令行节点的值进行压栈保存,依此类推,获取整个命令行多叉树的所有层级和所有命令行节点;
在获取命令行多叉树时,对命令行多叉树的完整路径中的节点,采用出栈弹出的方式,从最下层命令行节点追溯到最上层命令行节点,生成一条完整的命令行并保存,最终获取整个命令行多叉树的所有命令行。
优选地,对获取的数据网络设备的命令行节点的值进行压栈保存具体包括:
在命令行节点为需要用户填入数据时,根据命令行节点的提示内容自动生成与命令行节点对应的数据。
优选地,最终获取整个命令行多叉树的所有命令行之后,方法进一步包括:
根据命令行所属的层级和分支,对整个命令行多叉树的所有命令行依次进行编号,保存编号后的所有命令行。
优选地,完整路径具体包括:根据用户的指令确定的命令行收集的起始节点和最终节点之间的路径;或者,整个命令行多叉树从最下层命令行节到最上层命令行节点自然形成的路径中。
优选地,对命令行节点的值进行压栈保存具体包括:
按照命令行节点的提示显示的顺序或者自定义的顺序,对命令行节点的值进行压栈保存。
优选地,保存编号后的所有命令行具体包括:
以表格、文档、或者数据库的方式保存编号后的所有命令行。
本发明实施例还提供一种数据网络设备的命令行多叉树获取装置,包括:
命令行多叉树遍历单元,用于对获取的数据网络设备的第一层命令行节点的值进行压栈保存,并依次遍历第一层命令行节点中的每个命令行节点,对获取的第二层命令行节点的值进行压栈保存,依此类推,获取整个命令行多叉树的所有层级和所有命令行节点;
命令行多叉树收集单元,用于在获取命令行多叉树时,对命令行多叉树的完整路径中的节点,采用出栈弹出的方式,从最下层命令行节点追溯到最上层命令行节点,生成一条完整的命令行并保存,最终获取整个命令行多叉树的所有命令行。
优选地,命令行多叉树遍历单元具体用于:
在命令行节点为需要用户填入数据时,根据命令行节点的提示内容自动生成与命令行节点对应的数据。
优选地,命令行多叉树收集单元进一步用于:
根据命令行所属的层级和分支,对整个命令行多叉树的所有命令行依次进行编号,保存编号后的所有命令行。
优选地,完整路径具体包括:根据用户的指令确定的命令行收集的起始节点和最终节点之间的路径;或者,整个命令行多叉树从最下层命令行节到最上层命令行节点自然形成的路径中。
优选地,命令行多叉树遍历单元具体用于:
按照命令行节点的提示显示的顺序或者自定义的顺序,对命令行节点的值进行压栈保存。
优选地,上述装置进一步包括:
命令行多叉树信息归档单元,用于以表格、文档、或者数据库的方式保存编号后的所有命令行。
本发明实施例还提供一种数据网络设备的命令行多叉树获取装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被处理器执行时实现上述数据网络设备的命令行多叉树获取方法的步骤。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有信息传递的实现程序,程序被处理器执行时实现上述数据网络设备的命令行多叉树获取方法的步骤。
采用本发明实施例,通过数据网络设备本身命令行提示信息,按照命令行各个层次节点,智能获取该设备多层次、多分支的命令行,并使用多叉树的形式来表达命令行的丰富结构,使得用户能够获得完整的命令行手册,并能够通过界面查询到具体的命令配置实例,提高了使用效率,缩短了熟悉设备命令行的过程,提高了数据网络产品的易用性和可维护性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本发明实施例的数据网络设备的命令行多叉树获取方法的流程图;
图2是本发明实施例的数据网络设备的命令行多叉树获取方法的详细处理的流程图;
图3是本发明实施例中命令行编号的示意图;
图4是本发明一个实施例的数据网络设备的命令行多叉树获取装置的示意图;
图5是本发明另一个实施例的数据网络设备的命令行多叉树获取装置的示意图。
具体实施方式
为了解决现有技术中的问题,针对支持命令行输入的交换机、路由器设备、测试仪这些数据网络设备,采用本发明实施例的技术方案,在连接设备后,根据命令行的输入提示,自动收集并处理命令行,生成命令行多叉树,然后对该多叉树信息进行处理后生成使用树形结构编号的命令行手册,以保证快速掌握设备的命令行。
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
根据本发明实施例,提供了一种数据网络设备的命令行多叉树获取方法,图1是本发明实施例的数据网络设备的命令行多叉树获取方法的流程图,如图1所示,根据本发明实施例的数据网络设备的命令行多叉树获取方法具体包括:
步骤101,对获取的数据网络设备的第一层命令行节点的值进行压栈保存,并依次遍历第一层命令行节点中的每个命令行节点,对获取的第二层命令行节点的值进行压栈保存,依此类推,获取整个命令行多叉树的所有层级和所有命令行节点;其中,命令行多叉树中的命令行节点的值具体包括:命令行节点本身,和/或,根据提示信息自动生成的与命令行节点对应的数据。
在步骤101中,对获取的数据网络设备的命令行节点的值进行压栈保存具体包括:在命令行节点为需要用户填入数据时,根据命令行节点的提示内容自动生成与命令行节点对应的数据。此外,在实际应用中,可以按照命令行节点的提示显示的顺序或者自定义的顺序,对命令行节点的值进行压栈保存。
也就是说,步骤101是进行命令行多叉树的试探性遍历。具体地,在用户使用telnet或者串口连接数据网络产品后,输入问号或其他查询语句查看第一层的命令行节点,将这些节点进行压栈保存,作为多叉树的第一层节点。这些节点从提示显示的从上往下的顺序存储即可,此处可以根据需求是否做排序操作,例如,可以根据字母顺序继续排序等,排序的操作不会增加实现难度。随后,访问命令行树的第一层节点集合的第一个节点,再查看该节点的下一层节点,将这些节点进行压栈保存,作为多叉树的第二层节点的子集。依次遍历第一层节点集合的所有节点,以此获得命令行多叉树的所有第二层节点集合。对于节点值的处理,某些节点为明确的一个单词,某些节点是需要用户填入的一个数据,数据的范围和格式会在提示中显示。这时,系统会正则匹配提示的内容,来生成一个符合提示描述的数据填入。这样,多叉树的每一个节点都是明确的并且可下发的具体数据。依照上述段落中的描述方式,将整个命令行多叉树的所有层次和所有节点都覆盖到。
步骤102,在获取命令行多叉树时,对命令行多叉树的完整路径中的节点,采用出栈弹出的方式,从最下层命令行节点追溯到最上层命令行节点,生成一条完整的命令行并保存,最终获取整个命令行多叉树的所有命令行。
在步骤102中,完整路径具体包括:根据用户的指令确定的命令行收集的起始节点和最终节点之间的路径;或者,整个命令行多叉树从最下层命令行节到最上层命令行节点自然形成的路径中。也就是说,用户可以根据自己的需求设定命令行收集的起始点。例如用户只关心router bgp下的命令行,则可以设定起始收集点为router bgp 100,从而使得收集的范围可控,效率更高。
也就是说,在步骤102中主要是命令行多叉树的信息收集。实际实现时,第101和步骤102可以同时进行。收集一条命令行从多叉树的根部往下走,直到这条路径走到尽头。需要注意的是,路径走向只从上层往下层走,逆向或者平层之间不相互访问。在以上描述的前提下,当某路径结束时,立即对这条路径之前经过的节点进行收集,采用出栈弹出的方式,从树枝末端回溯到树根,生成一条完整的命令行。然后,保存到末尾节点所在层级。
在本发明实施例中,为了更好的对命令行进行管理,在最终获取整个命令行多叉树的所有命令行之后,还可以对整个命令行多叉树的所有命令行依次进行编号,保存编号后的所有命令行。在实际应用中,可以根据命令行所属的层级和分支,对整个命令行多叉树的所有命令行依次进行编号。最后,可以根据需要,以表格、文档、或者数据库的方式保存编号后的所有命令行。
上述处理主要是进行命令行多叉树的信息整理。步骤101和步骤102已经将整个数据网络产品的命令行多叉树完全揭露开,并按照多叉树的分层和分支生成了对应的命令行子集。该子集中的命令行可以按照层次和分支的形式进行编号。例如命令行在第一层的第二个分支结束,编号为1.2,如果在第三个分支结束,则该命令行编号为1.3。再例如,如果第二层的第三个分支结束,则该命令行编号为2.3,以此类推,所有命令行编号唯一。这样的条理清晰,便于管理,后续扩展编辑为各类格式的文档也非常便捷。
以下结合附图,对本发明实施例的上述技术方案进行举例说明。图2是本发明实施例的数据网络设备的命令行多叉树获取方法的详细处理的流程图,如图2所示,根据本发明实施例的数据网络设备的命令行多叉树获取方法具体包括:
步骤1,用户连接数据网络产品;
步骤2,输入问号查看第一层的命令行节点,将这些节点进行压栈保存,作为多叉树的第一层节点。这些节点从提示显示的从上往下的顺序存储即可,此处可以根据需求是否做排序操作(可以根据字母顺序继续排序等,不会增加实现难度),本发明实施例将排序作为可选项,默认不排序。访问命令行树的第一层节点集合的第一个节点,再输入问号查看该节点的下一层节点,将这些节点进行压栈保存,作为多叉树的第二层节点的第一个子集。同样的方法,依次遍历第一层节点集合的所有节点,以此获得命令行多叉树的所有第二层节点集合。需要注意的是,路径走向只从上层往下走,逆向或者平层之间不相互访问。
其中,在步骤2中,对于节点值的处理,某些节点为明确的一个或几个单词、词组,某些节点是需要用户填入的一个数据,数据的范围和格式会在提示中显示。这时,系统会智能分析提示的内容,来生成一个符合提示描述的数据填入,通常是一个规定长度范围的字符串或者是一个数值范围内的数值。这样,命令行树中的具体节点的节点值就确定下来了。
步骤3,在将整个命令行多叉树的所有层次和所有节点进行遍历的同时,需要完成命令行多叉树的信息收集。具体方法是:当某路径结束时,立即对这条路径之前经过的节点值进行收集,采用出栈弹出的方式,从树枝末端回溯到树根,生成一条完整的命令行。然后,保存到末尾节点所在层级。
步骤4,进行命令行多叉树的信息整理:在完成上述的命令行遍历和收集后,需要对获得的命令行多叉树的命令行信息进行进一步的整理。之前的步骤已经将整个数据网络产品的命令行多叉树完全揭露开,接下来需要按照多叉树的分层和分支去生成对应的文档。如图3所示,该文档的表达按照层次和分支的形式进行编号。例如第一层的第二个分支,编号为1.2,如果在第二个分支结束,则该命令行编号为1.2。再例如第二层的第三个分支结束,则该命令行编号为2.3,以此类推。用这样的方法,所有命令行的编号都是唯一的。经过整理后的命令行集合条理清晰,便于管理,后续扩展编辑为用户定制的各类格式的文档也非常便捷。
在本发明实施例中,需要注意的是,用户可以根据自己的需求设定命令行收集的起始点。例如用户只关心router bgp下的命令行,则可以设定起始收集点为router bgp100,该方法和系统完成后续命令行的收集和处理工作。这样收集的范围可控,效率更高。
另外,对于用户常用的一些tcl或者python的命令行系统,输入?或者-help后也可以用此方法,根据提示获取命令行手册,快速掌握这些语言的语句,对编程有较大帮助。
综上所述,借助于本发明实施例的技术方案,按照命令行各个层次节点,智能获取该设备多层次、多分支的命令行系统。提高了使用效率,缩短了熟悉设备命令行的过程,提高了数据网络产品的易用性和可维护性。
根据本发明的实施例,提供了一种数据网络设备的命令行多叉树获取装置,图4是本发明实施例的数据网络设备的命令行多叉树获取装置的示意图,如图4所示,根据本发明实施例的数据网络设备的命令行多叉树获取装置具体包括:
命令行多叉树遍历单元40,用于对获取的数据网络设备的第一层命令行节点的值进行压栈保存,并依次遍历第一层命令行节点中的每个命令行节点,对获取的第二层命令行节点的值进行压栈保存,依此类推,获取整个命令行多叉树的所有层级和所有命令行节点;其中,命令行多叉树中的命令行节点的值具体包括:命令行节点本身,和/或,根据提示信息自动生成的与命令行节点对应的数据。
命令行多叉树遍历单元40具体用于:在命令行节点为需要用户填入数据时,根据所述命令行节点的提示内容自动生成与所述命令行节点对应的数据。此外,需要按照命令行节点的提示显示的顺序或者自定义的顺序,对命令行节点的值进行压栈保存。
也就是说,命令行多叉树遍历单元40需要根据数据网络产品命令行提示,将所有命令行的层次和节点进行遍历,相当于把命令行的所有路径都走通。
命令行多叉树收集单元42,用于在获取所述命令行多叉树时,对所述命令行多叉树的完整路径中的节点,采用出栈弹出的方式,从最下层命令行节点追溯到最上层命令行节点,生成一条完整的命令行并保存,最终获取整个命令行多叉树的所有命令行。其中,所述完整路径具体包括:根据用户的指令确定的命令行收集的起始节点和最终节点之间的路径;或者,整个命令行多叉树从最下层命令行节到最上层命令行节点自然形成的路径中。
所述命令行多叉树收集单元42进一步用于:
根据命令行所属的层级和分支,对整个命令行多叉树的所有命令行依次进行编号,保存编号后的所有命令行。
也就是说,命令行多叉树收集单元42在命令行遍历单元执行过程中,同步完成这些路径的收集工作,并记录这条命令所在的层次和节点,记录点为这条路径的末端。记录的编号格式为“数字.数字”,例如2.1,3.2等。另外,此处在节点值的设定上,根据节点的描述信息,进行正则匹配后,设定符合描述的节点值。该单元收集到的是完整的且可下发的命令行实例。
在本发明实施例中,上述装置还可以进一步包括:
命令行多叉树信息归档单元,用于以表格、文档、或者数据库的方式保存编号后的所有命令行。
也就是说,命令行多叉树信息归档单元根据命令行收集单元获得的各条命令的编号进行归档,依次比较编号的大小,按次序进行存储。本发明中使用excel表格形式进行归档,层次和节点一目了然。另外很多编程语言对excel文档都有调用接口,因此该装置的输出对后续的进一步开发和使用都非常友好。
需要说明的是,用户可以根据自己的需求设定命令行收集的起始点。例如用户只关心router bgp下的命令行,则可以设定起始收集点为router bgp 100,该方法和系统完成后续命令行的收集和处理工作。这样收集的范围可控,效率更高。
本发明实施例是与上述方法实施例对应的装置实施例,相关细节可以参照上述方法实施例进行理解,在此不要赘述。
本发明实施例提供一种数据网络设备的命令行多叉树获取装置,如图5所示,包括:存储器50、处理器52及存储在存储器50上并可在处理器52上运行的计算机程序,计算机程序被处理器52执行时实现如下方法步骤:
步骤101,对获取的数据网络设备的第一层命令行节点的值进行压栈保存,并依次遍历第一层命令行节点中的每个命令行节点,对获取的第二层命令行节点的值进行压栈保存,依此类推,获取整个命令行多叉树的所有层级和所有命令行节点;其中,命令行多叉树中的命令行节点的值具体包括:命令行节点本身,和/或,根据提示信息自动生成的与命令行节点对应的数据。
在步骤101中,对获取的数据网络设备的命令行节点的值进行压栈保存具体包括:在命令行节点为需要用户填入数据时,根据命令行节点的提示内容自动生成与命令行节点对应的数据。此外,在实际应用中,可以按照命令行节点的提示显示的顺序或者自定义的顺序,对命令行节点的值进行压栈保存。
也就是说,步骤101是进行命令行多叉树的试探性遍历。具体地,在用户使用telnet或者串口连接数据网络产品后,输入问号或其他查询语句查看第一层的命令行节点,将这些节点进行压栈保存,作为多叉树的第一层节点。这些节点从提示显示的从上往下的顺序存储即可,此处可以根据需求是否做排序操作,例如,可以根据字母顺序继续排序等,排序的操作不会增加实现难度。随后,访问命令行树的第一层节点集合的第一个节点,再查看该节点的下一层节点,将这些节点进行压栈保存,作为多叉树的第二层节点的子集。依次遍历第一层节点集合的所有节点,以此获得命令行多叉树的所有第二层节点集合。对于节点值的处理,某些节点为明确的一个单词,某些节点是需要用户填入的一个数据,数据的范围和格式会在提示中显示。这时,系统会正则匹配提示的内容,来生成一个符合提示描述的数据填入。这样,多叉树的每一个节点都是明确的并且可下发的具体数据。依照上述段落中的描述方式,将整个命令行多叉树的所有层次和所有节点都覆盖到。
步骤102,在获取命令行多叉树时,对命令行多叉树的完整路径中的节点,采用出栈弹出的方式,从最下层命令行节点追溯到最上层命令行节点,生成一条完整的命令行并保存,最终获取整个命令行多叉树的所有命令行。
在步骤102中,完整路径具体包括:根据用户的指令确定的命令行收集的起始节点和最终节点之间的路径;或者,整个命令行多叉树从最下层命令行节到最上层命令行节点自然形成的路径中。也就是说,用户可以根据自己的需求设定命令行收集的起始点。例如用户只关心router bgp下的命令行,则可以设定起始收集点为router bgp 100,从而使得收集的范围可控,效率更高。
也就是说,在步骤102中主要是命令行多叉树的信息收集。实际实现时,第101和步骤102可以同时进行。收集一条命令行从多叉树的根部往下走,直到这条路径走到尽头。需要注意的是,路径走向只从上层往下层走,逆向或者平层之间不相互访问。在以上描述的前提下,当某路径结束时,立即对这条路径之前经过的节点进行收集,采用出栈弹出的方式,从树枝末端回溯到树根,生成一条完整的命令行。然后,保存到末尾节点所在层级。
在本发明实施例中,为了更好的对命令行进行管理,在最终获取整个命令行多叉树的所有命令行之后,还可以对整个命令行多叉树的所有命令行依次进行编号,保存编号后的所有命令行。在实际应用中,可以根据命令行所属的层级和分支,对整个命令行多叉树的所有命令行依次进行编号。最后,可以根据需要,以表格、文档、或者数据库的方式保存编号后的所有命令行。
上述处理主要是进行命令行多叉树的信息整理。步骤101和步骤102已经将整个数据网络产品的命令行多叉树完全揭露开,并按照多叉树的分层和分支生成了对应的命令行子集。该子集中的命令行可以按照层次和分支的形式进行编号。例如命令行在第一层的第二个分支结束,编号为1.2,如果在第三个分支结束,则该命令行编号为1.3。再例如,如果第二层的第三个分支结束,则该命令行编号为2.3,以此类推,所有命令行编号唯一。这样的条理清晰,便于管理,后续扩展编辑为各类格式的文档也非常便捷。
本发明实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有信息传输的实现程序,程序被处理器52执行时实现如下方法步骤:
步骤101,对获取的数据网络设备的第一层命令行节点的值进行压栈保存,并依次遍历第一层命令行节点中的每个命令行节点,对获取的第二层命令行节点的值进行压栈保存,依此类推,获取整个命令行多叉树的所有层级和所有命令行节点;其中,命令行多叉树中的命令行节点的值具体包括:命令行节点本身,和/或,根据提示信息自动生成的与命令行节点对应的数据。
在步骤101中,对获取的数据网络设备的命令行节点的值进行压栈保存具体包括:在命令行节点为需要用户填入数据时,根据命令行节点的提示内容自动生成与命令行节点对应的数据。此外,在实际应用中,可以按照命令行节点的提示显示的顺序或者自定义的顺序,对命令行节点的值进行压栈保存。
也就是说,步骤101是进行命令行多叉树的试探性遍历。具体地,在用户使用telnet或者串口连接数据网络产品后,输入问号或其他查询语句查看第一层的命令行节点,将这些节点进行压栈保存,作为多叉树的第一层节点。这些节点从提示显示的从上往下的顺序存储即可,此处可以根据需求是否做排序操作,例如,可以根据字母顺序继续排序等,排序的操作不会增加实现难度。随后,访问命令行树的第一层节点集合的第一个节点,再查看该节点的下一层节点,将这些节点进行压栈保存,作为多叉树的第二层节点的子集。依次遍历第一层节点集合的所有节点,以此获得命令行多叉树的所有第二层节点集合。对于节点值的处理,某些节点为明确的一个单词,某些节点是需要用户填入的一个数据,数据的范围和格式会在提示中显示。这时,系统会正则匹配提示的内容,来生成一个符合提示描述的数据填入。这样,多叉树的每一个节点都是明确的并且可下发的具体数据。依照上述段落中的描述方式,将整个命令行多叉树的所有层次和所有节点都覆盖到。
步骤102,在获取命令行多叉树时,对命令行多叉树的完整路径中的节点,采用出栈弹出的方式,从最下层命令行节点追溯到最上层命令行节点,生成一条完整的命令行并保存,最终获取整个命令行多叉树的所有命令行。
在步骤102中,完整路径具体包括:根据用户的指令确定的命令行收集的起始节点和最终节点之间的路径;或者,整个命令行多叉树从最下层命令行节到最上层命令行节点自然形成的路径中。也就是说,用户可以根据自己的需求设定命令行收集的起始点。例如用户只关心router bgp下的命令行,则可以设定起始收集点为router bgp 100,从而使得收集的范围可控,效率更高。
也就是说,在步骤102中主要是命令行多叉树的信息收集。实际实现时,第101和步骤102可以同时进行。收集一条命令行从多叉树的根部往下走,直到这条路径走到尽头。需要注意的是,路径走向只从上层往下层走,逆向或者平层之间不相互访问。在以上描述的前提下,当某路径结束时,立即对这条路径之前经过的节点进行收集,采用出栈弹出的方式,从树枝末端回溯到树根,生成一条完整的命令行。然后,保存到末尾节点所在层级。
在本发明实施例中,为了更好的对命令行进行管理,在最终获取整个命令行多叉树的所有命令行之后,还可以对整个命令行多叉树的所有命令行依次进行编号,保存编号后的所有命令行。在实际应用中,可以根据命令行所属的层级和分支,对整个命令行多叉树的所有命令行依次进行编号。最后,可以根据需要,以表格、文档、或者数据库的方式保存编号后的所有命令行。
上述处理主要是进行命令行多叉树的信息整理。步骤101和步骤102已经将整个数据网络产品的命令行多叉树完全揭露开,并按照多叉树的分层和分支生成了对应的命令行子集。该子集中的命令行可以按照层次和分支的形式进行编号。例如命令行在第一层的第二个分支结束,编号为1.2,如果在第三个分支结束,则该命令行编号为1.3。再例如,如果第二层的第三个分支结束,则该命令行编号为2.3,以此类推,所有命令行编号唯一。这样的条理清晰,便于管理,后续扩展编辑为各类格式的文档也非常便捷。
本实施例计算机可读存储介质包括但不限于为:ROM、RAM、磁盘或光盘等。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种数据网络设备的命令行多叉树获取方法,其特征在于,包括:
对获取的数据网络设备的第一层命令行节点的值进行压栈保存,并依次遍历第一层命令行节点中的每个命令行节点,对获取的第二层命令行节点的值进行压栈保存,依此类推,获取整个命令行多叉树的所有层级和所有命令行节点;
在获取所述命令行多叉树时,对所述命令行多叉树的完整路径中的节点,采用出栈弹出的方式,从最下层命令行节点追溯到最上层命令行节点,生成一条完整的命令行并保存,最终获取整个命令行多叉树的所有命令行。
2.如权利要求1所述的方法,其特征在于,对获取的数据网络设备的命令行节点的值进行压栈保存具体包括:
在命令行节点为需要用户填入数据时,根据所述命令行节点的提示内容自动生成与所述命令行节点对应的数据。
3.如权利要求1所述的方法,其特征在于,最终获取整个命令行多叉树的所有命令行之后,所述方法进一步包括:
根据命令行所属的层级和分支,对整个命令行多叉树的所有命令行依次进行编号,保存编号后的所有命令行。
4.如权利要求1所述的方法,其特征在于,所述完整路径具体包括:
根据用户的指令确定的命令行收集的起始节点和最终节点之间的路径;或者,
整个命令行多叉树从最下层命令行节到最上层命令行节点自然形成的路径中。
5.如权利要求1所述的方法,其特征在于,对命令行节点的值进行压栈保存具体包括:
按照命令行节点的提示显示的顺序或者自定义的顺序,对命令行节点的值进行压栈保存。
6.如权利要求3所述的方法,其特征在于,保存编号后的所有命令行具体包括:
以表格、文档、或者数据库的方式保存编号后的所有命令行。
7.一种数据网络设备的命令行多叉树获取装置,其特征在于,
命令行多叉树遍历单元,用于对获取的数据网络设备的第一层命令行节点的值进行压栈保存,并依次遍历第一层命令行节点中的每个命令行节点,对获取的第二层命令行节点的值进行压栈保存,依此类推,获取整个命令行多叉树的所有层级和所有命令行节点;
命令行多叉树收集单元,用于在获取所述命令行多叉树时,对所述命令行多叉树的完整路径中的节点,采用出栈弹出的方式,从最下层命令行节点追溯到最上层命令行节点,生成一条完整的命令行并保存,最终获取整个命令行多叉树的所有命令行。
8.如权利要求7所述的装置,其特征在于,命令行多叉树遍历单元具体用于:
在命令行节点为需要用户填入数据时,根据所述命令行节点的提示内容自动生成与所述命令行节点对应的数据。
9.如权利要求7所述的装置,其特征在于,所述命令行多叉树收集单元进一步用于:
根据命令行所属的层级和分支,对整个命令行多叉树的所有命令行依次进行编号,保存编号后的所有命令行。
10.如权利要求7所述的装置,其特征在于,所述完整路径具体包括:
根据用户的指令确定的命令行收集的起始节点和最终节点之间的路径;或者,
整个命令行多叉树从最下层命令行节到最上层命令行节点自然形成的路径中。
11.如权利要求7所述的装置,其特征在于,命令行多叉树遍历单元具体用于:
按照命令行节点的提示显示的顺序或者自定义的顺序,对命令行节点的值进行压栈保存。
12.如权利要求9所述的装置,其特征在于,所述装置进一步包括:
命令行多叉树信息归档单元,用于以表格、文档、或者数据库的方式保存编号后的所有命令行。
13.一种数据网络设备的命令行多叉树获取装置,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至6中任一项所述的数据网络设备的命令行多叉树获取方法的步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有信息传递的实现程序,所述程序被处理器执行时实现如权利要求1至6中任一项所述的数据网络设备的命令行多叉树获取方法的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910554820.8A CN112131432A (zh) | 2019-06-25 | 2019-06-25 | 数据网络设备的命令行多叉树获取方法及装置 |
EP20831328.8A EP3992785A4 (en) | 2019-06-25 | 2020-06-23 | METHOD AND APPARATUS FOR OBTAINING A CONTROL LINE MULTI-WAY TREE OF A DATA NETWORK DEVICE |
PCT/CN2020/097570 WO2020259460A1 (zh) | 2019-06-25 | 2020-06-23 | 数据网络设备的命令行多叉树获取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910554820.8A CN112131432A (zh) | 2019-06-25 | 2019-06-25 | 数据网络设备的命令行多叉树获取方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112131432A true CN112131432A (zh) | 2020-12-25 |
Family
ID=73849111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910554820.8A Pending CN112131432A (zh) | 2019-06-25 | 2019-06-25 | 数据网络设备的命令行多叉树获取方法及装置 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP3992785A4 (zh) |
CN (1) | CN112131432A (zh) |
WO (1) | WO2020259460A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113922979A (zh) * | 2021-08-23 | 2022-01-11 | 北京天融信网络安全技术有限公司 | 网络安全设备配置系统、配置方法、计算机设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902547A (zh) * | 2012-10-18 | 2013-01-30 | 上海师范大学 | 一种命令行接口的命令构造与解析方法 |
KR102126218B1 (ko) * | 2015-11-04 | 2020-06-24 | 한국전자통신연구원 | 동적 명령어 처리 장치 및 방법 |
CN107749800B (zh) * | 2017-09-22 | 2021-01-12 | 安徽皖通邮电股份有限公司 | 一种实现通信设备自动化测试配置隐式删除的方法 |
-
2019
- 2019-06-25 CN CN201910554820.8A patent/CN112131432A/zh active Pending
-
2020
- 2020-06-23 WO PCT/CN2020/097570 patent/WO2020259460A1/zh unknown
- 2020-06-23 EP EP20831328.8A patent/EP3992785A4/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113922979A (zh) * | 2021-08-23 | 2022-01-11 | 北京天融信网络安全技术有限公司 | 网络安全设备配置系统、配置方法、计算机设备 |
CN113922979B (zh) * | 2021-08-23 | 2023-07-04 | 北京天融信网络安全技术有限公司 | 网络安全设备配置系统、配置方法、计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2020259460A1 (zh) | 2020-12-30 |
EP3992785A1 (en) | 2022-05-04 |
EP3992785A4 (en) | 2022-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104361139B (zh) | 数据导入装置和方法 | |
CN100468402C (zh) | 一种数据存储及查询方法 | |
CN101167075B (zh) | 专有表现抽取装置、方法以及程序 | |
CN107798123B (zh) | 知识库及其建立、修改、智能问答方法、装置及设备 | |
CN109933311A (zh) | 一种信息系统创建方法及相关装置 | |
CN103605706A (zh) | 一种基于知识地图的资源检索方法 | |
CN105706092B (zh) | 四值模拟的方法和系统 | |
CN105335412A (zh) | 用于数据转换、数据迁移的方法和装置 | |
CN102193906A (zh) | Word格式试卷自动导入数据库系统的方法 | |
CN116028653B (zh) | 一种可视化配置多源异构数据构建图谱的方法及系统 | |
CN108446115A (zh) | 一种代码复用的方法及装置 | |
CN107016094A (zh) | 一种项目共享文件多人协同开发方法、装置及系统 | |
CN106648608A (zh) | 一种灵活方便的流程图构建方法 | |
CN106484892A (zh) | 数据操作方法及装置 | |
CN108829651A (zh) | 一种公文处理的方法、装置、终端设备及存储介质 | |
CN109922131A (zh) | 基于区块链的数据存储方法、装置、设备及存储介质 | |
CN109584127B (zh) | 一种用于实验教学的教学资源管理方法及系统 | |
CN113190692B (zh) | 一种知识图谱的自适应检索方法、系统及装置 | |
CN112131432A (zh) | 数据网络设备的命令行多叉树获取方法及装置 | |
CN112860581A (zh) | 一种测试用例的执行方法、装置、设备及存储介质 | |
CN110110153A (zh) | 一种节点搜索的方法和装置 | |
CN111522820A (zh) | 数据存储结构、存储检索方法、系统、设备及存储介质 | |
CN115827885A (zh) | 一种运维知识图谱的构建方法、装置及电子设备 | |
CN110147358B (zh) | 自动问答知识库的建设方法及建设系统 | |
CN103116601A (zh) | 一种提高输入法智能联想准确度的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |