[发明专利]一种命令行输入的实现方法及系统有效
申请号: | 201810289981.4 | 申请日: | 2018-04-03 |
公开(公告)号: | CN108647043B | 公开(公告)日: | 2021-03-16 |
发明(设计)人: | 陶阳 | 申请(专利权)人: | 烽火通信科技股份有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 彭程程 |
地址: | 430000 湖北省武*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 命令行 输入 实现 方法 系统 | ||
1.一种命令行输入的实现方法,其特征在于,包括步骤:
定义自定义命令行,其中可选关键字和参数放在必须输入的后面,并采用字符串代替;
定义一个分析所述自定义命令行的自定义解析函数,并与注册在命令树上的所述自定义命令行绑定;
通过所述自定义解析函数判断所述可选关键字和参数是否合法,同时,根据命令树上自定义命令行原型自动补充部分输入的可选关键字;
定义所述自定义命令行包括:
对自定义命令行所有需要支持的可选关键字定义枚举;
定义一个数据结构,将每个可选关键字、对应的帮助信息和对应的参数范围信息三者之间进行关联;
定义一个数组,其成员为所述数据结构;
定义所述自定义命令行的形式,必须输入的关键字和参数放在前面,所有可选关键字和参数放在后面;
所述自定义解析函数解析输入的命令行,遍历命令树,查找与该命令行匹配的命令行原型,若该命令行原型为自定义的,则通过自定义解析函数进行解析;若该命令行原型不是自定义的,则通过原有流程解析。
2.如权利要求1所述的命令行输入的实现方法,其特征在于:所述数据结构中,若可选关键字不带参数,则对应的参数范围信息为空。
3.如权利要求1所述的命令行输入的实现方法,其特征在于:所述自定义解析函数解析自定义命令行,若当前输入的可选关键字与数组中存储的可选关键字不匹配,或者当前输入的可选关键字和已输入的可选关键字存在逻辑冲突,均认为输入非法,结束流程。
4.如权利要求1所述的命令行输入的实现方法,其特征在于:所述自定义解析函数解析自定义命令行,若当前输入的可选关键字与数组中存储的匹配、当前输入的可选关键字和已输入的可选关键字没有逻辑冲突,且用户继续输入的参数属于数组中对应的参数范围,则说明当前输入的可选关键字和对应的参数合法。
5.如权利要求4所述的命令行输入的实现方法,其特征在于:所述自定义解析函数解析自定义命令行,若当前输入的可选关键字与数组中存储的某个可选关键字部分相同则匹配,则直接按照数组中存储的可选关键字进行补充,并提取出该可选关键字替代对应可选关键字注册时采用的字符串,得到该可选关键字对应的帮助信息和对应的参数范围。
6.如权利要求4所述的命令行输入的实现方法,其特征在于:自定义解析函数解析自定义命令行,若当前输入的可选关键字与数组中存储的至少两个可选关键字都部分相同则匹配,则提供所有部分相同的可选关键字供选择,用被选择的可选关键字替代对应可选关键字注册时采用的字符串,得到该可选关键字对应的帮助信息和对应的参数范围。
7.如权利要求5或6所述的命令行输入的实现方法,其特征在于:若所述可选关键字具有对应的参数范围,且后续没有输入参数,或者后续输入的参数不属于对比数组中对应的该参数范围,则判定参数为非法状态,流程结束。
8.一种采用如权利要求1所述的命令行输入的实现方法实现命令行输入的系统,其特征在于,包括:
命令行定义模块,其用于定义命令行中可选关键字和参数放在必须输入的后面,并采用字符串代替;
解析模块,其用于根据已经注册的自定义命令行自动补充部分输入的可选关键字,还用于判断输入的可选关键字和参数是否合法。
9.如权利要求8所述的系统,其特征在于:所述命令行定义模块包括数据结构和数组,数据结构将每个可选关键字、对应的帮助信息和对应的参数范围信息三者之间进行关联;数组的成员为所述数据结构。
10.如权利要求9所述的系统,其特征在于,所述解析模块包括:
自定义命令行判别模块,其用于遍历命令树,判定输入的命令行是否为已注册的自定义命令行;
关键字判别模块,其用于遍历所述数组判断当前输入的可选关键字的合法性;
参数判别模块,其用于遍历所述数组判断当前输入的可选关键字后续输入参数的合法性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火通信科技股份有限公司,未经烽火通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810289981.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种模块管理方法及装置
- 下一篇:浮点缩放处理器、方法、系统和指令