命令行的配置方法及装置的制作方法

文档序号:7856329阅读:151来源:国知局
专利名称:命令行的配置方法及装置的制作方法
技术领域
本发明涉及通信领域,具体而言,涉及一种命令行的配置方法及装置。
背景技术
现有的网络操作系统如CISCO的IOS、Juniper的JUNOS等其命令行接口都是操作系统事先定义好,并且是不可修改的。目前所有网络操作系统均不支持命令行在线可编程,用户只能适应不同操作系统提供的命令行,而不能由自己定义命令行,使得在网络操作系统的使用过程中,存在以下问题I)不同网络设备商提供的命令行接口各不相同,使得提供的命令行也各不相同,即使是配置同样的业务,因为设备商的命令行接口不同,用户需要重复学习不同的命令行, 从而增加了用户的学习成本。2)对于已经支持的业务,但是对应的命令行不完善的,目前只能通过厂商打补丁或者更换版本的方式来完善命令行,使得增加了网络操作系统使用者的运营成本。3)对于网络设备厂商来说,也面临着需要满足用户快速定制命令行的需求,因为,厂商如果只发布一种版本命令行接口的命令行,难免会有顾此失彼的情况,如果根据不同厂商发布不同版本的命令行接口的命令行,则又会增加开发维护的费用。在相关技术中,思科公司的IOS网络操作系统为了提升命令行界面的操作可用性,提供了宏命令和命令别名的方式。但是宏命令仅能定义成直线式的命令行,不能有任何分支处理,而且其参数仅仅能支持3个。宏命令的主要应用场景是使用一条宏命令,代替总是在一起配置的多条命令,以达到减轻运维人员工作量的目的,本质上是命令行的批处理。而命令别名仅仅是一个字符串替换,且不能支持任何参数,用户也不能创造任何新的命令行,只能对命令行进行部分的替换。针对相关技术中上述至少之一的问题,目前尚未提出有效的解决方案。

发明内容
本发明提供了一种命令行的配置方法及装置,以至少解决相关技术中网络操作系统不能实现在线可编程的问题。根据本发明的一个方面,提供了一种命令行的配置方法,其包括通过用户接口获取用于配置命令行的定义信息,其中,定义信息包括关键字信息和参数信息,关键字信息用于理解命令行,参数信息用于定义对用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作;通过用户接口以线索表达式的方式将定义信息定义为命令行。优选地,通过用户接口以线索表达式的方式将定义信息定义为命令行包括将定义信息定义为一条或多条线索表达式,其中,线索表达式符合网络操作系统提供的线索表达式规范要求;对线索表达式定义操作类型生成命令行,其中,操作类型包括增加、修改、删除、获取。优选地,通过用户接口获取参数信息包括通过用户接口定义参数信息;或者通过用户接口引用已经存在的命令行的参数信息。优选地,在通过用户接口以线索表达式的方式将定义信息定义为命令行之后,上述命令行的配置方法还包括从网络操作系统提供的执行模式中为命令行选择执行模式。优选地,在通过用户接口以线索表达式的方式将定义信息定义为命令行之后,上述命令行的配置方法还包括通过用户接口在执行命令行之前和之后分别设置可调用执行的操作。优选地,在通过用户接口以线索表达式的方式将定义信息定义为命令行之后,上述命令行的配置方法还包括在命令行满足管理信息模型的格式要求的情况下,网络操作系统将命令行生效。根据本发明的另一方面,提供了一种命令行的配置装置,其包括获取模块,用于通过用户接口获取用于配置命令行的定义信息,其中,定义信息包括关键字信息和参数信息,关键字信息用于理解命令行,参数信息用于定义对用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作;定义模块,用于通过用户接口以线索表达式的方式 将定义信息定义为命令行。优选地,定义模块包括定义单元,用于将定义信息定义为一条或多条线索表达式,其中,线索表达式符合网络操作系统提供的线索表达式规范要求;生成单元,用于对线索表达式定义操作类型生成命令行,其中,操作类型包括增加、修改、删除、获取。优选地,获取模块包括第一获取单元,用于通过用户接口定义参数信息;或者第二获取单元,用于通过用户接口引用已经存在的命令行的参数信息。优选地,上述命令行的配置装置还包括选择模块,用于从网络操作系统提供的执行模式中为命令行选择执行模式。优选地,上述命令行的配置装置还包括设置模块,用于通过用户接口在执行命令行之前和之后分别设置可调用执行的操作。在本发明中,通过用户接口来获取用于配置命令行的定义信息,该定义信息包括关键字信息和参数信息,该关键字信息用于理解上述命令行,该参数信息用于定义对用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作;并通过用户接口以线索表达式的方式将定义信息定义为命令行,实现了通过用户接口可以在线根据用户输入的定义信息进行编程,实现用户可以根据自己的需要、习惯定义命令行,从而降低用户学习、运营的成本,厂商也可以满足不同用户的命令行定制需求,从而提高了厂商提供服务的灵活性。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图I是根据本发明实施例的命令行的配置方法的流程图;图2是根据本发明实施例的命令行的配置装置的结构框图;图3是根据本发明实施例的定义模块的结构框图;图4是根据本发明实施例的获取模块的结构框图;图5是根据本发明实施例的另一种命令行的配置装置的结构框图6是根据本发明实施例的又一种命令行的配置装置的结构框图;以及图7是根据本发明实施例的另一种命令行的配置方法的流程图。
具体实施例方式下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本实施例提供了一种命令行的配置方法,如图I所示,该命令行的配置方法包括步骤S102至步骤S104。步骤S102 :通过用户接口获取用于配置命令行的定义信息,其中,定义信息包括关键字信息和参数信息,关键字信息用于理解命令行,参数信息用于定义对用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作。步骤S104 :通过用户接口以线索表达式的方式将定义信息定义为命令行。通过上述步骤,通过用户接口来获取用于配置命令行的定义信息,该定义信息包括关键字信息和参数信息,该关键字信息用于理解上述命令行,该参数信息用于定义对用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作;并通过用户接口以线索表达式的方式将部分或全部定义信息定义为命令行,实现了通过用户接口可以在线根据用户输入的定义信息进行编程,实现用户可以根据自己的需要、习惯定义命令行,从而降低用户学习、运营的成本,厂商也可以满足不同用户的命令行定制需求,从而提高了厂商提供服务的灵活性。优选地,上述用户接口可以是允许用户自定义命令行的用户接口,例如,命令行接口、管理信息库(Management Information Base,简称为MIB)接口、网络配置协议(NetworkConfiguration Protocol,简称为 NETC0NF)接口等。为了提高命令行配置的灵活性,以满足不同应用场景的需求,在本优选实施例中,通过用户接口以线索表达式的方式将定义信息定义为命令行包括将上述定义信息定义为一条或多条线索表达式,其中,该线索表达式符合网络操作系统提供的线索表达式规范要求;对线索表达式定义操作类型生成命令行,其中,操作类型包括增加、修改、删除、获取。为了提高获取参数信息的灵活性,在本优选实施例中,通过上述用户接口获取参数信息包括通过上述用户接口定义上述参数信息;或者通过上述用户接口引用已经存在的命令行的参数信息。即可以通过用户接口直接重新定义参数信息,也可以通过用户接口引用已经存在的命令行的参数信息,引用后还可以对该参数信息(非被引用参数信息)进行修改,以符合自己的需要。优选地,上述参数信息携带了用户希望输入的信息,该参数信息对应于管理信息模型的某个对象的属性,因此,定义命令参数信息主要是定义参数名称、帮助信息、参数类型、取值范围、对应管理信息模型具体的对象和属性等,可以考虑使用XML路径语言(XMLPath Language,简称为XPATH)或子树过滤等手段根据命令参数定位对象和属性,也可以将关键字信息定义为与管理信息模型具体的对象和属性对应,根据关键字信息定位对象和属性。为了满足不同应用场景的需求,在本优选实施例中,在通过用户接口以线索表达式的方式将定义信息定义为命令行之后,从网络操作系统提供的执行模式中为命令行选择执行模式。为了满足不同应用场景的需求,在本优选实施例中,在通过用户接口以线索表达式的方式将定义信息定义为命令行之后,通过上述用户接口在执行上述命令行之前和之后分别设置可调用执行的操作,该可调用执行的操作可以是调用脚本,例如,该脚本可以是命令行脚本、脚本语言脚本等。通过上述用户接口在执行上述命令行之前和之后分别设置可调用执行的操作也可以称为定义上述命令行的前处理、后处理,如果定义了前处理和后处理,则在执行命令之前和之后会分别调用上述定义的可调用执行的操作,前处理和后处理可以是针对某个管理信息模型中的对象和属性进行操作的命令行,也可以是用户预定义的脚本,网络操作系统对外发布一些公共应用程序接口(Application Program Interface,简称为API)以便于脚本调用,该脚本建议使用通行的脚本语言书写,也可以使用命令行批处理形式。配置完上述命令行后,可以通过以下步骤来执行上述命令行,例如,在通过用户接口以线索表达式的方式将定义信息定义为命令行之后,在命令行满足管理信息模型的格式要求的情况下,上述网络操作系统将上述命令行生效。即配置完上述命令行后,将新定义的 命令行加入到命令树中生效,在生效时需要检查新定义的命令行是否满足管理信息模型的要求,如果不能满足要求,则不能生效(如命令行定义的必选参数比管理信息模型中定义的必选参数要少)。生效后,该命令行从使用者看来和网络操作系统提供的固有命令行没有什么不同,网络操作系统和执行自身固有命令行一样执行该命令行。本优选实施例提供了一种命令行的配置装置,如图2所示,该命令行的配置装置包括获取模块202,用于通过用户接口获取用于配置命令行的定义信息,其中,定义信息包括关键字信息和参数信息,关键字信息用于理解命令行,参数信息用于定义对用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作;定义模块204,连接至获取模块202,用于通过用户接口以线索表达式的方式将定义信息定义为命令行。在本优选实施例中,获取模块202通过用户接口来获取用于配置命令行的定义信息,该定义信息包括关键字信息和参数信息,该关键字信息用于理解上述命令行,该参数信息用于定义对用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作;定义模块204通过用户接口以线索表达式的方式将部分或全部定义信息定义为命令行,实现了通过用户接口可以在线根据用户输入的定义信息进行编程,实现用户可以根据自己的需要、习惯定义命令行,从而降低用户学习、运营的成本,厂商也可以满足不同用户的命令行定制需求,从而提高了厂商提供服务的灵活性。为了提高命令行配置的灵活性,以满足不同应用场景的需求,在本优选实施例中,如图3所示,上述定义模块204包括定义单元2042,用于将定义信息定义为一条或多条线索表达式,其中,线索表达式符合网络操作系统提供的线索表达式规范要求;生成单元2044,连接至定义单元2042,用于对线索表达式定义操作类型生成命令行,其中,操作类型包括增加、修改、删除、获取。为了提高获取参数信息的灵活性,在本优选实施例中,如图4所示,上述获取模块202包括第一获取单元2022,用于通过上述用户接口定义上述参数信息;或者第二获取单元2024,用于通过上述用户接口引用已经存在的命令行的参数信息。为了满足不同应用场景的需求,在本优选实施例中,如图5所示,上述令行的配置装置还包括选择模块206,用于从网络操作系统提供的执行模式中为命令行选择执行模式。为了满足不同应用场景的需求,在本优选实施例中,如图6所示,上述令行的配置装置还包括设置模块208,用于通过用户接口在执行命令行之前和之后分别设置可调用执行的操作,该可调用执行的操作可以是调用脚本,调用脚本,例如,该脚本可以是命令行脚本、脚本语言脚本等。以下结合附图对上述各个优选实施例进行详细地描述。图7是根据本发明实施例的另一种命令行的配置方法的流程图,如图7所示,该命令行的配置方法包括步骤S702至步骤S710。步骤S702 :定义命令关键字(相当于上述关键字信息)和参数(相当于上述参数信息)。命令关键字主要是为了帮助用户理解命令行的,其本身往往不包含任何对象和属性信 息。因此定义命令关键字主要是定义关键字名称和帮助信息。命令参数主要是携带了用户希望输入的信息,其对应于管理信息模型的某个对象的属性,可以考虑使用XPATH或子树过滤等手段根据命令参数定位对象和属性。因此,定义命令参数主要是定义参数名称、帮助信息、参数类型、取值范围、对应管理信息模型具体的对象和属性。另外命令参数还可以引用现存命令行的某个参数,引用后还可以对该命令参数(非被引用参数)进行修改,以符合自己的需要。步骤S704 :定义命令的线索表达式。用户可以根据自己的需要将步骤S702中定义的全部或部分命令关键字和参数通过线索表达式定义成新的自定义命令行,线索表达式允许的形式必须符合本网络操作系统提供的命令行线索表达式规范要求。优选地,本步骤可以定义多条命令线索表达式。步骤S706 :定义命令的操作类型,执行模式。针对步骤S704中定义的每一条命令线索表达式,在本步骤中为其定义其命令操作类型,具体类型包括新增、修改、删除、获取。同时还在本步骤中为其定义执行模式,执行模式必须在本网络操作系统可以提供的模式中选取。步骤S708 :定义命令的前处理、后处理。如果定义了前处理和后处理,则在执行命令之前和之后会分别调用。前处理和后处理可以使针对某个管理信息模型中的对象和属性的操作,也可以是用户预定义的脚本,网络操作系统对外发布一些公共API以便于脚本调用,脚本建议使用通行的脚本语言书写,也可以使用命令行批处理形式。步骤S710 :将新定义的命令行加入到命令树中生效,需要指出的时,在生效时需要检查新定义的命令行是否满足管理信息模型的要求,如果不能满足要求,则不能生效(如命令行定义的必选参数比管理信息模型中定义的必选参数要少)。生效后,该命令从使用者看来和网络操作系统提供的固有命令行没有什么不同,网络操作系统和执行自身固有命令行一样执行该命令行。从以上的描述中,可以看出,上述实施例实现了如下技术效果通过用户接口来获取用于配置命令行的定义信息,该定义信息包括关键字信息和参数信息,该关键字信息用于理解上述命令行,该参数信息用于定义对用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作;并通过用户接口以线索表达式的方式将定义信息定义为命令行,实现了通过用户接口可以在线根据用户输入的定义信息进行编程,实现用户可以根据自己的需要、习惯定义命令行,从而降低用户学习、运营的成本,厂商也可以满足不同用户的命令行定制需求,从而提高了厂商提供服务的灵活性。为了满足不同应用场景的需求,对线索表达式定义操作类型生成命令行,其中,操作类型包括增加、修改、删除、获取,并从网络操作系统提供的执行模式中为命令行选择执行模式。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。·
权利要求
1.一种命令行的配置方法,其特征在于,包括 通过用户接口获取用于配置命令行的定义信息,其中,所述定义信息包括关键字信息和参数信息,所述关键字信息用于理解所述命令行,所述参数信息用于定义对所述用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作; 通过所述用户接口以线索表达式的方式将所述定义信息定义为所述命令行。
2.根据权利要求I所述的方法,其特征在于,通过所述用户接口以所述线索表达式的方式将所述定义信息定义为所述命令行包括 将所述定义信息定义为一条或多条所述线索表达式,其中,所述线索表达式符合所述网络操作系统提供的线索表达式规范要求; 对所述线索表达式定义操作类型生成所述命令行,其中,所述操作类型包括增加、修改、删除、获取。
3.根据权利要求I或2所述的方法,其特征在于,通过所述用户接口获取所述参数信息包括 通过所述用户接口定义所述参数信息;或者 通过所述用户接口引用已经存在的命令行的参数信息。
4.根据权利要求I或2所述的方法,其特征在于,在通过所述用户接口以线索表达式的方式将所述定义信息定义为所述命令行之后,还包括 从所述网络操作系统提供的执行模式中为所述命令行选择执行模式。
5.根据权利要求I或2所述的方法,其特征在于,在通过所述用户接口以线索表达式的方式将所述定义信息定义为所述命令行之后,还包括 通过所述用户接口在执行所述命令行之前和之后分别设置可调用执行的操作。
6.根据权利要求I或2所述的方法,其特征在于,在通过所述用户接口以线索表达式的方式将所述定义信息定义为所述命令行之后,还包括 在所述命令行满足所述管理信息模型的格式要求的情况下,所述网络操作系统将所述命令行生效。
7.一种命令行的配置装置,其特征在于,包括 获取模块,用于通过用户接口获取用于配置命令行的定义信息,其中,所述定义信息包括关键字信息和参数信息,所述关键字信息用于理解所述命令行,所述参数信息用于定义对所述用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作; 定义模块,用于通过所述用户接口以线索表达式的方式将所述定义信息定义为所述命令行。
8.根据权利要求7所述的装置,其特征在于,所述定义模块包括 定义单元,用于将所述定义信息定义为一条或多条所述线索表达式,其中,所述线索表达式符合所述网络操作系统提供的线索表达式规范要求; 生成单元,用于对所述线索表达式定义操作类型生成所述命令行,其中,所述操作类型包括增加、修改、删除、获取。
9.根据权利要求7或8所述的装置,其特征在于,所述获取模块包括 第一获取单元,用于通过所述用户接口定义所述参数信息;或者 第二获取单元,用于通过所述用户接口引用已经存在的命令行的参数信息。
10.根据权利要求7或8所述的装置,其特征在于,还包括 选择模块,用于从所述网络操作系统提供的执行模式中为所述命令行选择执行模式。
11.根据权利要求7或8所述的装置,其特征在于,还包括 设置模块,用于通过所述用户接口在执行所述命令行之前和之后分别设置可调用执行的操作。
全文摘要
本发明提供了一种命令行的配置方法及装置,其中,该方法包括通过用户接口获取用于配置命令行的定义信息,其中,定义信息包括关键字信息和参数信息,关键字信息用于理解命令行,参数信息用于定义对用户接口所使用的网络操作系统的管理信息模型中的对象和属性的操作;通过用户接口以线索表达式的方式将定义信息定义为命令行。本发明解决了相关技术中网络操作系统不能实现在线可编程的问题,从而降低了用户学习、运营的成本,提高了厂商提供服务的灵活性。
文档编号H04L12/24GK102761443SQ20121025210
公开日2012年10月31日 申请日期2012年7月20日 优先权日2012年7月20日
发明者冯冲 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1