本发明专利技术公开了一种字符串命令处理方法,具体采用以下步骤:将字符串命令码和输入输出参数记录到本地的表或文件中;对下发的字符串命令进行输入参数的合法性检查,通过合法性检查的字符串命令下发;收到字符串命令返回结果后,用输出参数从返回结果中获取输出结果,并按照显示格式进行格式显示。本方法在增加新的和修改旧的字符串命令时,不需要改动原先的程序,只需要在表中增加或修改该命令的相关记录,对同一个命令的不同返回结果可以提供不同的显示格式,既保证了不牺牲功能,又极大地提高了可维护性和程序的可靠性。
【技术实现步骤摘要】
本专利技术涉及一种命令处理方法,尤其是字符串命令的处理方法。
技术介绍
字符串命令是目前广泛流行的命令方式,例如DOS和UNIX系统中都大量采用字符串的命令方式。字符串的命令方式有其特定的优势,在很多场合下不可或缺,如对外提供接口、命令批处理等等。有许多字符串命令,系统并不关心命令本身,而只需要将命令下发,并显示返回结果就可以了,但是系统需要对命令输入进行合法性判断,对不同命令的不同返回结果按照一定格式进行显示。按照现有技术中一般的做法,在增加、减少或者修改一条原先的字符串命令,都需要修改原先的程序代码,增加对该字符串命令的支持,包括对该命令的输入参数的检查,对该命令的不同返回结果的输出参数的提取,并按照一定格式进行显示。而在实际应用中诸如修改参数、修改显示格式等需求的变化是很常见的现象,这就造成了一个问题,每次修改都要修改原先的程序代码,更换版本,这样频繁地修改现有的版本,会造成版本难以维护,影响版本稳定性。
技术实现思路
本专利技术解决的技术问题是改变现有技术中处理字符串命令的方式,减少因为增加、减少或者修改字符串命令而引起的频繁修改版本问题,从而降低对版本稳定性的影响。为了达到以上目的,本专利技术方法具体采用以下步骤步骤一将字符串命令码和输入输出参数记录到本地的表或文件中;步骤二对下发的字符串命令进行输入参数的合法性检查,通过合法性检查的字符串命令下发;步骤三收到字符串命令返回结果后,用输出参数从返回结果中获取输出结果,并按照显示格式进行格式显示。其中步骤一包括以下步骤1.1)定义命令码、输入输出参数属性,每种命令设定唯一的命令码,每个输入和输出参数都设定对应的参数属性;1.2)将所有的字符串命令码、输入参数属性和输出参数属性记录在表或者文件中。其中步骤二包括以下步骤2.1)用户下发字符串命令;2.2)系统从字符串命令中提取命令码,并从字符串命令表和输入参数表中提取该命令码对应的输入参数,进行输入参数的合法性检查;2.3)如果字符串命令通过合法性检查则将命令下发给前台,如果没有通过合法性检查则向用户提示错误信息。其中步骤三包括以下步骤3.1)接收字符串命令返回结果;3.2)对于返回错误执行结果的,直接从输出的命令结果中提取错误码,根据错误码解释成对应的错误结果字符串,直接显示该错误结果字符串,流程结束;3.3)对于返回正确执行结果的,从输出的命令结果中提取格式控制符,并根据命令码和格式控制符从参数格式表中读取输出参数,再按照输出参数属性从输出的命令结果中提取对应的输出数据;3.4)输出数据按照输出参数所对应参数格式表的固有格式进行显示。上述显示格式包括头参数格式、循环参数格式、行循环参数格式、二维循环参数格式,输出命令结果时可以分别采用这些格式或者这些格式的各种组合。本方法在增加新的和修改旧的字符串命令时,不需要改动原先的程序,只需要在表中增加或修改该命令的相关记录就可以了,极大地提高了可维护性和程序的可靠性。将命令按照命令码、输入参数和输出参数进行数据提取,按照输入参数类型进行合法性检测,将整个命令显示格式归纳为四种固定格式,而不是按照不同的命令码采用不同的命令处理方式,同时采用了格式符的概念,对同一个命令的不同返回结果可以提供不同的显示格式。这样既保证了不牺牲功能,又最大限度地保证了程序的相对稳定,只有在需要有新类型的输入参数和输出参数,需要有新的命令显示格式时,才需要修改程序增加对新参数和新格式的支持,由于开发前期会覆盖大部分的输入参数和输出参数,四种命令显示格式又基本上能覆盖大部分的应用,所以越是到开发后期,改动程序的情况越少。附图说明图1是本专利技术方法的流程2是本专利技术方法实施例的流程图具体实施方式下面结合附图对本专利技术的实现方式做进一步详细说明。如图1所示,本专利技术方法主要包括以下步骤步骤一将字符串命令码和输入输出参数记录到本地的表或文件中;步骤二对下发的字符串命令进行输入参数的合法性检查,通过合法性检查的字符串命令下发;步骤三收到字符串命令返回结果后,用输出参数从返回结果中获取输出结果,并按照显示格式进行格式显示。本专利技术方法可以应用于各种字符串命令的处理中,下面以个人便携电话系统(PHS)系统的网管系统为例,详细介绍本专利技术的实施方法。网管编程采用DELPHI,采用PARADOX数据库记录字符串命令信息(也可以用文件等其它方式记录所有的命令信息,只是信息提取方式有些不同而已)。本方法中系统不是按照命令码进行分类处理,而是按照参数属性来分类处理。对于每个输入参数都有输入参数属性,对于每个输出参数都有输出参数的属性,每种输入参数属性或者输出参数属性都由单独的函数进行处理。参数属性由系统定义,需要穷举,也可以自定义参数属性。需要定义三类表字符串命令表、输入参数表和输出参数表。字符串命令表用于记录所有的字符串命令码,输入参数表用于记录所有命令的输入参数的属性,输出参数用于记录所有的输出参数的属性和显示的格式。表存放在本地硬盘上,也可以用文件等其它静态存放方式。对命令码和输入、输出参数的定义如下WholeCmd.db表记录所有的命令码,见表1。表1 CmdInpara.db表记录了所有的命令输入参数,见表2。表2 输出格式可以归纳成四种头参数格式、循环参数格式、行循环参数格式、二维循环参数格式。每种输出格式分别对应一个表,所以共有四个输出参数表,命令结果的显示格式可以采用这些格式或者这些格式的各种组合。头参数格式用于表示“字段名=值”这种类型的输出。循环参数和二维循环参数用于输出多个字段的多条结果,不同的是,二维循环参数的显示格式和表格类似,而循环参数适用于字段太多,如果用表格形式显示可能在一个界面中显示不全的情况。行循环参数是和二维循环参数配套使用的,行循环参数用于给二维循环参数的行记录做注释。headPara.db表记录头参数格式的输出参数,见表3。表3 头参数格式显示形式如下=======人机命令输出内容========主节点号=15呼叫区号=65534CyclePara.db表记录循环参数格式的输出参数,见表4。表4 循环参数格式显示形式如下=======人机命令输出内容========顺序号=96群内序号=96中继用户逻辑号=15_40_36物理设备号=0-1-15-36中继类型=双向中继线路信令方式=CCS共路信令号码分析表号=0用户测试组=0信令点类型=14位SPC目的地信令点编码=0_0_1电路指示码=356顺序号=97群内序号=97中继用户逻辑号=15_40_37物理设备号=0-1-15-37中继类型=双向中继线路信令方式=CCS共路信令号码分析表号=0用户测试组=0信令点类型=14位SPC目的地信令点编码=0_0_1电路指示码=357ColPara.db表记录行循环参数格式的输出参数,见表5。表5 本输出参数表是配合二维循环参数表使用的,用于给二维循环参数的每行记录做注释,如下面举例中的“一级”、“二级”、“三级”,行循环参数格式的显示形式如下=======人机命令输出内容========CPU占用率剩余UB百分比 呼叫强度(1次/5秒) 信令链路拥塞一级85 10 200 1二级80 20 本文档来自技高网...
【技术保护点】
一种字符串命令处理方法,其特征在于,包括以下处理步骤: 步骤一:将字符串命令码和输入输出参数记录到本地的表或文件中; 步骤二:对下发的字符串命令进行输入参数的合法性检查,通过合法性检查的字符串命令下发; 步骤三:收到字符串命令返回结果后,用输出参数从返回结果中获取输出结果,并按照显示格式进行格式显示。
【技术特征摘要】
【专利技术属性】
技术研发人员:谢永辉,蒋贤忠,罗江凯,
申请(专利权)人:中兴通讯股份有限公司,
类型:发明
国别省市:94[中国|深圳]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。