CN102508690A - 一种嵌入式设备的命令行的保存方法和解码方法 - Google Patents

一种嵌入式设备的命令行的保存方法和解码方法 Download PDF

Info

Publication number
CN102508690A
CN102508690A CN2011103581154A CN201110358115A CN102508690A CN 102508690 A CN102508690 A CN 102508690A CN 2011103581154 A CN2011103581154 A CN 2011103581154A CN 201110358115 A CN201110358115 A CN 201110358115A CN 102508690 A CN102508690 A CN 102508690A
Authority
CN
China
Prior art keywords
key word
field
type
order line
type identification
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.)
Granted
Application number
CN2011103581154A
Other languages
English (en)
Other versions
CN102508690B (zh
Inventor
刘纪开
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Raisecom Technology Co Ltd
Original Assignee
Raisecom Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Raisecom Technology Co Ltd filed Critical Raisecom Technology Co Ltd
Priority to CN201110358115.4A priority Critical patent/CN102508690B/zh
Publication of CN102508690A publication Critical patent/CN102508690A/zh
Application granted granted Critical
Publication of CN102508690B publication Critical patent/CN102508690B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种嵌入式设备的命令行的保存方法和解码方法;所述保存方法包括:将待保存的命令行根据命令行中的空格划分为多个字段;根据预定义的对应关系,将所述多个字段中类型为关键字的字段转换为识别码;所述对应关系为各关键字和识别码之间的一一对应关系;保存转换后的命令行。本发明能够节省存储命令行所用的存储资源,并且保持用户界面的友好性。

Description

一种嵌入式设备的命令行的保存方法和解码方法
技术领域
本发明涉及计算机领域,尤其涉及一种嵌入式设备的命令行的保存方法和解码方法。
背景技术
嵌入式设备通常由嵌入式处理器、相关支撑硬件和嵌入式软件系统组成,它是集软硬件于一体的可独立工作的“器件”。嵌入式处理器主要由一个单片机或微控制器(MCU)组成。相关支撑硬件包括显示卡、存储介质、通讯设备、IC卡或信用卡的读取设备等。嵌入式设备不具备像硬盘那样大容量的存储介质,而大多使用闪存(Flash Memory)作为存储介质。嵌入式软件包括与硬件相关的底层软件、操作系统、图形界面、通讯协议、数据库系统、标准化浏览器和应用软件等。
目前,嵌入式设备的命令行(CLI)配置存储一般采用明文存储的方式,会消耗大量宝贵的内存和闪存硬件资源。
发明内容
本发明要解决的技术问题是如何节省存储命令行所用的存储资源。
为了解决上述问题,本发明提供了一种嵌入式设备的命令行的保存方法,包括:
将待保存的命令行根据命令行中的空格划分为多个字段;
根据预定义的对应关系,将所述多个字段中类型为关键字的字段转换为识别码;所述对应关系为各关键字和识别码之间的一一对应关系;
保存转换后的命令行。
进一步地,所述保存转换后的命令行的步骤前还包括:
在各类型字段前分别添加该类型的类型标识;所述类型包括关键字、用户自定义字符串、纯数字、可数字化字符串;
转换后删除命令行中的空格。
进一步地,所述可数字化字符串的类型分为因特网协议/掩码IP/MASK和介质访问控制MAC两种,类型标识各不相同;
所述保存转换后的命令行的步骤前还包括:
将纯数字转换为16进制数;
将IP/MASK种类的可数字化字符串中的每个字节的数值转换为两位的16进制数,删除各字节之间的标点;
对于MAC种类的可数字化字符串,删除各字节之间的标点。
进一步地,删除各字节之间的标点的步骤后、保存转换后的命令行的步骤前还包括:
如果可数字化字符串开头的一个或多个连续数字为0,则删除这个或这些0。
进一步地,所述关键字的类型分为多种,关键字的类型标识包括多个,分别用于表示不同种类的关键字;
所述对应关系包括多个对应关系,分别属于不同种类的关键字;属于某个种类关键字的对应关系是该种类关键字中,关键字和识别码之间的一一对应关系。
进一步地,所述保存转换后的命令行的步骤前还包括:
在命令行的开头删除指定种类关键字的类型标识。
进一步地,所述对应关系的表现形式为关键字表,将关键字在关键字表中所存放的位置作为标识码。
本发明要解决的又一技术问题是如何在节省存储命令行所用的存储资源的同时,保持用户界面的友好性。
为了解决上述问题,本发明提供了一种嵌入式设备的命令行的解码方法,包括:
根据预定义的对应关系,将命令行中的识别码转换成关键字;
所述对应关系为各关键字和识别码之间的一一对应关系。
进一步地,所述找到命令行中各识别码,根据预定义的对应关系,将各识别码分别转换成关键字的步骤具体包括:
A、获取命令行中的第一个字符作为当前字符;
B、如果该当前字符表示命令行结束,则结束解码;如果该当前字符不是类型标识,则把当前字符增加到待解码字段,进行步骤C;所述类型标识包括关键字的类型标识、用户自定义字符串的类型标识、纯数字的类型标识、可数字化字符串的类型标识;
如果该当前字符是类型标识,则根据当前类型将待解码字段转换为命令行字段,转换时如果当前类型为关键字,则将待解码字段作为识别码,根据预定义的对应关系转换成成关键字;在转换得到的命令行字段后增加一空格;然后将当前类型设置为当前字符所代表的类型,清空待解码字段后进行步骤C;
C、获取命令行中的下一个字符作为当前字符,返回步骤B。
进一步地,所述步骤B中根据当前类型将待解码字段转换为命令行字段的步骤中还包括:
如果当前类型为纯数字,则将待解码字段中的16进制数转换为10进制数;如果当前类型为IP/MASK种类的可数字化字符,则将待解码字段划分为四个各两位的16进制数,相邻的16进制数间以标点隔开,将各两位的16进制数分别转换为3位的10进制数;如果当前类型为MAC种类的可数字化字符,则将待解码字段划分为三段各四位的16进制数,相邻的16进制数间以标点隔开。
进一步地,如果将待解码字段划分为四个各两位的16进制数时待解码字段不足八位,则在待解码字段左边补0,将待解码字段补为八位;
如果将待解码字段划分为三段各四位的16进制数时待解码字段不足十二位,则在待解码字段左边补0,将待解码字段补为十二位。
进一步地,所述关键字的类型标识包括多个,分别用于表示不同种类的关键字;
所述对应关系包括多个对应关系,分别属于不同种类的关键字;属于某个种类关键字的对应关系是该种类关键字中,关键字和识别码之间的一一对应关系;
步骤A中还包括:
将当前类型设置为指定种类关键字的类型标识;将待解码字段清空;
步骤B中,转换时如果当前类型为某个种类关键字的类型标识,则将待解码字段作为识别码,根据该种类关键字的对应关系转换成成关键字。
进一步地,根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤前还包括:
找到命令行中各类型标识;所述类型标识包括关键字的类型标识、用户自定义字符串的类型标识、纯数字的类型标识、可数字化字符串的类型标识;
将命令行以类型标识作为间隔划分为多个字段,字段中的类型标识位于本字段的开头;
所述根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤中还包括:
找到以关键字的类型标识开头的各字段,将所找到的字段中类型标识以外的字符为标识码;
所述根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤后还包括:
将各类型标识替换成空格。
进一步地,所述可数字化字符串的类型分为因特网协议/掩码IP/MASK和介质访问控制MAC两种,类型标识各不相同;
将命令行以类型标识作为间隔划分为多个字段的步骤后、将各类型标识替换成空格的步骤前还包括:
如果字段的开头为纯数字的类型标识,则将该字段中类型标识以外的数值从16进制数转换为10进制数;
如果字段的开头为IP/MASK种类的可数字化字符的类型标识,则将该字段中类型标识以外的数值划分为四个各两位的16进制数,相邻的16进制数间以标点隔开;将各两位的16进制数分别转换为3位的10进制数;
如果字段的开头为MAC种类的可数字化字符的类型标识,则将该字段中类型标识以外的数值划分为三段各四位的16进制数,相邻的16进制数间以标点隔开。
进一步地,如果将数值划分为四个各两位的16进制数时该数值不足八位,则在数值左边补0,将该数值补为八位;
如果将数值划分为三段各四位的16进制数时该数值不足十二位,则在数值左边补0,将该数值补为十二位。
进一步地,所述关键字的类型标识包括多个,分别用于表示不同种类的关键字;
所述对应关系包括多个对应关系,分别属于不同种类的关键字;属于某个种类关键字的对应关系是该种类关键字中,关键字和识别码之间的一一对应关系;
所述根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤中还包括:
根据字段开头的类型标识,找到相应种类关键字的对应关系,在该对应关系中查找识别码对应的关键字;
如果从命令行中划分出的第一个字段开头没有类型标识,则在指定种类的关键字的对应关系中,以该第一个字段作为识别码找到对应的关键字。
进一步地,所述对应关系的表现形式为关键字表,关键字表中标识码所代表的存放位置中是该标识码对应的关键字。
本发明的技术方案实现简单,通过对明文命令行各字段进行重新编码,缩短命令行以有效减少命令行配置存储对内存和闪存硬件资源的占用,并且读取时进行解码,以保证用户输入和读取的仍是原有命令行;本发明的优化方案在关键字表分类,存储访问方法以及可数字化字符串分类的扩展方面提供了良好的支持。
附图说明
图1是实施例一的嵌入式设备的命令行的保存方法的流程示意图;
图2是实施例二的一种实现形式的流程示意图。
具体实施方式
下面将结合附图及实施例对本发明的技术方案进行更详细的说明。
需要说明的是,如果不冲突,本发明实施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
实施例一,一种嵌入式设备的命令行的保存方法,如图1所示,包括:
将待保存的命令行根据命令行中的空格划分为多个字段;比如命令行ip-access-list 2 bcity-acl-2 ip 192.168.1.1 permit就划分为ip-access-list、2、bcity-acl-2、ip、192.168.1.1、permit这六个字段;
根据预定义的对应关系,将所述多个字段中类型为关键字的字段转换为识别码;所述对应关系为各关键字和识别码之间的一一对应关系;
保存转换后的命令行。
关键字是嵌入式设备里事先定义的、有特别意义的标识符,也可称为保留字;由于有的关键字比较长,比如class-map、user-access-list、ip-access-list等,当采用识别码代替后,可缩短这些关键字的长度,从而节省存储资源。本实施例中,所述识别码可以为数字,也可以为字母等;所述对应关系的表现形式可以但不限于为一关键字表。
本实施例中,所述保存转换后的命令行的步骤前还可以包括:
在各类型字段前分别添加该类型的类型标识;所述类型包括关键字、用户自定义字符串、纯数字、可数字化字符串;
转换后删除命令行中的空格。
本实施例中,转换过程中各字段在命令行中的顺序是不变的;其中,用户自定义字符串是用户所自行定义和使用的定量名、变量名、函数名等;类型为纯数字的字段是只有数字的字段;类型为可数字化字符串的字段是数字加标点符号的字段,一般为物理、IP地址;这里说到的数字也包括16进制等中出现的表示数字的字母,比如A、B、C等。比如下面两个命令行中:
user-access-list 1 acity-acl-1 mac 0021:9B6F:84E0 deny
ip-access-list 2 bcity-acl-2 ip 192.168.1.1 permit
关键字有user-access-list,ip-access-list,mac,ip,deny,permit,用户自定义字符串有acity-acl-1和bcity-acl-2,纯数字有1,2,可数字化字符串有MAC(介质访问控制)地址0021:9B6F:84E0和IP(因特网协议)地址192.168.1.1。
本实施例中,所述类型标识采用的是用户自定义字符串中不允许出现的特殊字符,以免在后期解码时产生混淆,比如但不限于{、[、(等。
本实施例中,所述保存转换后的命令行的步骤前还可以包括:
将纯数字转换为16进制数。
本实施例中,所述关键字的类型还可以进一步分为多种(两种或两种以上),相应的,关键字的类型标识可以包括多个,分别用于表示不同种类的关键字;所述对应关系也相应包括多个对应关系,分别属于不同种类的关键字;属于某个种类关键字的对应关系是该种类关键字中,关键字和识别码之间的一一对应关系。
比如可以把关键字按照长度分为第一种、第二种、第三种类,类型标识各不相同,比如分别为(、[、{。如果对应关系的表现形式为关键字表,则相应包括第一、第二、第三关键字表,分别存放第一、第二、第三种类关键字。
将关键字在关键字表中所存放的位置作为标识码;如果标识码为10进制数,那么关键字的字段最后的保存形式就是类型标识加10进制数。在不同关键字表中,识别码即使相同也代表不同的关键字,比如第一种类的关键字表中,识别码为0的关键字为port,保存形式为(0;而第二种类的关键字表中,识别码为0的关键字为class-map,保存形式为[0。
本实施例中,所述可数字化字符串的类型可分为IP/MASK(因特网协议/掩码)和MAC(介质访问控制)两种,类型标识各不相同,比如分别为!和/。
本实施例中,所述保存转换后的命令行的步骤前还可以包括:
将IP/MASK种类的可数字化字符串中的每个字节的数值转换为两位的16进制数,删除各字节之间的标点;比如192.168.0.1就是转换为c0a80101;
对于MAC种类的可数字化字符串,删除各字节之间的标点。
本实施例中,增加类型标识、删除空格、转换16进制数、删除字节间的标点、将关键字转换成标识码的这些步骤可不分先后。
本实施例中,删除各字节之间的标点的步骤后、保存转换后的命令行的步骤前还可以包括:
如果可数字化字符串开头的一个或多个连续数字为0,则删除这个或这些0;比如IP/MASK种类的可数字化字符串0.0.0.1转换为16进制数后为00000001,删除从开头起连续的7个0后变成1,加上类型标识!后保存为!1;再比如MAC种类的可数字化字符串0021:9B6F:84E0删除开头连续的两个0后,加上类型标识/后保存为/219b6f84e0(保存时字母大小写均可)。
各类型标识所对应的字段类型及明文形式如表一所示。
表一、类型标识
Figure BDA0000107778150000081
由于用户自定义字符串内容不变,可数字化字符串和数字都使用16进制数字重新编码,由此达到节省空间的目的。
最后保存的命令行没有空格,类型为关键字的字段被保存时的形式是:关键字的类型标识加识别码,比如关键字的类型标识为(,关键字port的识别码为0,则字段“port”保存时为(0。
类型为用户自定义字符串的字段被保存时的形式是:用户自定义字符串的类型标识加原先的字符串,比如用户自定义字符串的类型标识为″,则字段“bcity-acl-2”保存时为″bcity-acl-2。
类型为纯数字的字段被保存时的形式是:纯数字的类型标识加与该数字相等的16进制数,比如纯数字的类型标识为#,则字段“10”保存时为#A。
类型为IP/MASK种类的可数字化字符串的字段被保存时的形式是:IP/MASK种类的可数字化字符串的类型标识加无标点符号的16进制数;其中16进制数是根据该字段中各字节的数值转换得来的(省略开头连续的0),比如可数字化字符串中IP地址的类型标识为!,则字段“192.168.1.1”保存时为!c0a80101。
类型为MAC种类的可数字化字符串的字段被保存时的形式是:MAC种类的可数字化字符串的类型标识加无标点符号的16进制数,其中16进制数就是该字段中各字节(省略开头连续的0)。
各类型字段最后的保存形式如表二所示。
表二、各种保存形式
Figure BDA0000107778150000091
以ip-access-list 2 bcity-acl-2ip 192.168.1.1 permit为例,假设ip-access-list是类型3表的第2个元素,ip是类型1表的第1个元素,permit是类型2的第1个元素,重新编码后的命令行为{2#2″bcity-acl-2(1!c0a80101[1。原命令行长度为51,新编码命令行长度为30,节约空间效果明显。
由于命令行开头必然是关键字,因此保存转换后的命令行的步骤前还可以包括:
删除命令行开头的类型标识;即直接用识别码的方式表示关键字。
如果关键字的类型标识包括多种,则可以在命令行的开头删除指定种类关键字的类型标识,如果命令行开头是其他种类的关键字,则仍然保留类型标识。例如指定第一种类的关键字在命令行开头不使用类型标识,那么ip192.168.1.1的新编码为1!c0a80101,而不是(1!c0a80101。
实施例二,一种嵌入式设备的命令行的解码方法,包括:
根据预定义的对应关系,将命令行中的识别码转换成关键字;
所述对应关系为各关键字和识别码之间的一一对应关系。
本实施例中,所述关键字的类型标识可以包括多个,分别用于表示不同种类的关键字;所述对应关系包括多个对应关系,分别属于不同种类的关键字;属于某个种类关键字的对应关系是该种类关键字中,关键字和识别码之间的一一对应关系。
本实施例中,所述对应关系的表现形式为关键字表,关键字表中标识码所代表的存放位置中是该标识码对应的关键字。
本实施例的一种具体实现形式中,根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤如图2所示,具体可以包括:
A、获取命令行中的第一个字符作为当前字符;
B、如果该当前字符表示命令行结束,则结束解码;如果该当前字符不是类型标识,把当前字符增加到待解码字段,然后进行步骤C;
如果该当前字符是类型标识,则根据当前类型将待解码字段转换为命令行字段,转换时如果当前类型为关键字,则将待解码字段作为识别码,根据预定义的对应关系转换成成关键字;在转换得到的命令行字段后增加一空格;然后将当前类型设置为当前字符所代表的类型,清空待解码字段后进行步骤C;
C、获取命令行中的下一个字符作为当前字符,返回步骤B。
在该实现形式中,所述步骤B中根据当前类型将待解码字段转换为命令行字段的步骤还可以包括:
如果当前类型为纯数字,则将待解码字段中的16进制数转换为10进制数;如果当前类型为IP/MASK种类的可数字化字符,则将待解码字段划分为四个各两位的16进制数,相邻的16进制数间以标点(可以但不限于为“.”)隔开,将各两位的16进制数分别转换为3位的10进制数;如果当前类型为MAC种类的可数字化字符,则将待解码字段划分为三段各四位的16进制数,相邻的16进制数间以标点(可以但不限于为“:”)隔开。
在该实现形式中,如果将待解码字段划分为四个各两位的16进制数时待解码字段不足八位,则在待解码字段左边补0,将待解码字段补为八位,比如待解码字段是1,则补为00000001;如果将待解码字段划分为三段各四位的16进制数时待解码字段不足十二位,则在待解码字段左边补0,将待解码字段补为十二位。
该实现形式中,如果关键字分为多个种类,则步骤A中还包括:
将当前类型设置为指定种类关键字的类型标识;将待解码字段清空;
步骤B中,转换时如果当前类型为某个种类关键字的类型标识,则将待解码字段作为识别码,根据该种类关键字的对应关系转换成成关键字。
在本实施例的另一种实现形式中,根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤前还可以包括:
找到命令行中各类型标识;所述类型标识包括关键字的类型标识、用户自定义字符串的类型标识、纯数字的类型标识、可数字化字符串的类型标识;
将命令行以类型标识作为间隔划分为多个字段,字段中的类型标识位于本字段的开头;
所述根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤中还包括:
找到以关键字的类型标识开头的各字段,将所找到的字段中类型标识以外的字符为标识码;
所述根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤后还包括:
将各类型标识替换成空格。
该实现形式中,所述可数字化字符串的类型分为因特网协议/掩码IP/MASK和介质访问控制MAC两种,类型标识各不相同;
将命令行以类型标识作为间隔划分为多个字段的步骤后、将各类型标识替换成空格的步骤前还包括:
如果字段的开头为纯数字的类型标识,则将该字段中类型标识以外的数值从16进制数转换为10进制数;
如果字段的开头为IP/MASK种类的可数字化字符的类型标识,则将该字段中类型标识以外的数值划分为四个各两位的16进制数,相邻的16进制数间以标点(可以但不限于为“.”)隔开;将各两位的16进制数分别转换为3位的10进制数;
如果字段的开头为MAC种类的可数字化字符的类型标识,则将该字段中类型标识以外的数值划分为三段各四位的16进制数,相邻的16进制数间以标点(可以但不限于为“:”)隔开。
该实现形式中,如果将数值划分为四个各两位的16进制数时该数值不足八位,则在数值左边补0,将该数值补为八位;如果将数值划分为三段各四位的16进制数时该数值不足十二位,则在数值左边补0,将该数值补为十二位。
该实现形式中,当所述关键字分为多个种类时,所述根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤中还可以包括:
根据字段开头的类型标识,找到相应种类关键字的对应关系,在该对应关系中查找识别码对应的关键字;
如果从命令行中划分出的第一个字段开头没有类型标识,则在指定种类的关键字的对应关系中,以该第一个字段作为识别码找到对应的关键字。
其它实现细节可参见实施例一。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明的权利要求的保护范围。

Claims (17)

1.一种嵌入式设备的命令行的保存方法,包括:
将待保存的命令行根据命令行中的空格划分为多个字段;
根据预定义的对应关系,将所述多个字段中类型为关键字的字段转换为识别码;所述对应关系为各关键字和识别码之间的一一对应关系;
保存转换后的命令行。
2.如权利要求1所述的方法,其特征在于,所述保存转换后的命令行的步骤前还包括:
在各类型字段前分别添加该类型的类型标识;所述类型包括关键字、用户自定义字符串、纯数字、可数字化字符串;
转换后删除命令行中的空格。
3.如权利要求2所述的方法,其特征在于:
所述可数字化字符串的类型分为因特网协议/掩码IP/MASK和介质访问控制MAC两种,类型标识各不相同;
所述保存转换后的命令行的步骤前还包括:
将纯数字转换为16进制数;
将IP/MASK种类的可数字化字符串中的每个字节的数值转换为两位的16进制数,删除各字节之间的标点;
对于MAC种类的可数字化字符串,删除各字节之间的标点。
4.如权利要求3所述的方法,其特征在于,删除各字节之间的标点的步骤后、保存转换后的命令行的步骤前还包括:
如果可数字化字符串开头的一个或多个连续数字为0,则删除这个或这些0。
5.如权利要求2所述的方法,其特征在于:
所述关键字的类型分为多种,关键字的类型标识包括多个,分别用于表示不同种类的关键字;
所述对应关系包括多个对应关系,分别属于不同种类的关键字;属于某个种类关键字的对应关系是该种类关键字中,关键字和识别码之间的一一对应关系。
6.如权利要求5所述的方法,其特征在于,所述保存转换后的命令行的步骤前还包括:
在命令行的开头删除指定种类关键字的类型标识。
7.如权利要求1到6中任一项所述的方法,其特征在于:
所述对应关系的表现形式为关键字表,将关键字在关键字表中所存放的位置作为标识码。
8.一种嵌入式设备的命令行的解码方法,包括:
根据预定义的对应关系,将命令行中的识别码转换成关键字;
所述对应关系为各关键字和识别码之间的一一对应关系。
9.如权利要求8所述的方法,其特征在于,所述找到命令行中各识别码,根据预定义的对应关系,将各识别码分别转换成关键字的步骤具体包括:
A、获取命令行中的第一个字符作为当前字符;
B、如果该当前字符表示命令行结束,则结束解码;如果该当前字符不是类型标识,则把当前字符增加到待解码字段,进行步骤C;所述类型标识包括关键字的类型标识、用户自定义字符串的类型标识、纯数字的类型标识、可数字化字符串的类型标识;
如果该当前字符是类型标识,则根据当前类型将待解码字段转换为命令行字段,转换时如果当前类型为关键字,则将待解码字段作为识别码,根据预定义的对应关系转换成成关键字;在转换得到的命令行字段后增加一空格;然后将当前类型设置为当前字符所代表的类型,清空待解码字段后进行步骤C;
C、获取命令行中的下一个字符作为当前字符,返回步骤B。
10.如权利要求9所述的方法,其特征在于,所述步骤B中根据当前类型将待解码字段转换为命令行字段的步骤中还包括:
如果当前类型为纯数字,则将待解码字段中的16进制数转换为10进制数;如果当前类型为IP/MASK种类的可数字化字符,则将待解码字段划分为四个各两位的16进制数,相邻的16进制数间以标点隔开,将各两位的16进制数分别转换为3位的10进制数;如果当前类型为MAC种类的可数字化字符,则将待解码字段划分为三段各四位的16进制数,相邻的16进制数间以标点隔开。
11.如权利要求10所述的方法,其特征在于:
如果将待解码字段划分为四个各两位的16进制数时待解码字段不足八位,则在待解码字段左边补0,将待解码字段补为八位;
如果将待解码字段划分为三段各四位的16进制数时待解码字段不足十二位,则在待解码字段左边补0,将待解码字段补为十二位。
12.如权利要求9到11中任一项所述的方法,其特征在于:
所述关键字的类型标识包括多个,分别用于表示不同种类的关键字;
所述对应关系包括多个对应关系,分别属于不同种类的关键字;属于某个种类关键字的对应关系是该种类关键字中,关键字和识别码之间的一一对应关系;
步骤A中还包括:
将当前类型设置为指定种类关键字的类型标识;将待解码字段清空;
步骤B中,转换时如果当前类型为某个种类关键字的类型标识,则将待解码字段作为识别码,根据该种类关键字的对应关系转换成成关键字。
13.如权利要求8所述的方法,其特征在于,根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤前还包括:
找到命令行中各类型标识;所述类型标识包括关键字的类型标识、用户自定义字符串的类型标识、纯数字的类型标识、可数字化字符串的类型标识;
将命令行以类型标识作为间隔划分为多个字段,字段中的类型标识位于本字段的开头;
所述根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤中还包括:
找到以关键字的类型标识开头的各字段,将所找到的字段中类型标识以外的字符为标识码;
所述根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤后还包括:
将各类型标识替换成空格。
14.如权利要求13述的方法,其特征在于:
所述可数字化字符串的类型分为因特网协议/掩码IP/MASK和介质访问控制MAC两种,类型标识各不相同;
将命令行以类型标识作为间隔划分为多个字段的步骤后、将各类型标识替换成空格的步骤前还包括:
如果字段的开头为纯数字的类型标识,则将该字段中类型标识以外的数值从16进制数转换为10进制数;
如果字段的开头为IP/MASK种类的可数字化字符的类型标识,则将该字段中类型标识以外的数值划分为四个各两位的16进制数,相邻的16进制数间以标点隔开;将各两位的16进制数分别转换为3位的10进制数;
如果字段的开头为MAC种类的可数字化字符的类型标识,则将该字段中类型标识以外的数值划分为三段各四位的16进制数,相邻的16进制数间以标点隔开。
15.如权利要求14所述的方法,其特征在于:
如果将数值划分为四个各两位的16进制数时该数值不足八位,则在数值左边补0,将该数值补为八位;
如果将数值划分为三段各四位的16进制数时该数值不足十二位,则在数值左边补0,将该数值补为十二位。
16.如权利要求13到15中任一项所述的方法,其特征在于:
所述关键字的类型标识包括多个,分别用于表示不同种类的关键字;
所述对应关系包括多个对应关系,分别属于不同种类的关键字;属于某个种类关键字的对应关系是该种类关键字中,关键字和识别码之间的一一对应关系;
所述根据预定义的对应关系,将命令行中的识别码转换成关键字的步骤中还包括:
根据字段开头的类型标识,找到相应种类关键字的对应关系,在该对应关系中查找识别码对应的关键字;
如果从命令行中划分出的第一个字段开头没有类型标识,则在指定种类的关键字的对应关系中,以该第一个字段作为识别码找到对应的关键字。
17.如权利要求8到11、13到15中任一项所述的方法,其特征在于:
所述对应关系的表现形式为关键字表,关键字表中标识码所代表的存放位置中是该标识码对应的关键字。
CN201110358115.4A 2011-11-11 2011-11-11 一种嵌入式设备的命令行的保存方法和解码方法 Active CN102508690B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110358115.4A CN102508690B (zh) 2011-11-11 2011-11-11 一种嵌入式设备的命令行的保存方法和解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110358115.4A CN102508690B (zh) 2011-11-11 2011-11-11 一种嵌入式设备的命令行的保存方法和解码方法

Publications (2)

Publication Number Publication Date
CN102508690A true CN102508690A (zh) 2012-06-20
CN102508690B CN102508690B (zh) 2014-09-17

Family

ID=46220782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110358115.4A Active CN102508690B (zh) 2011-11-11 2011-11-11 一种嵌入式设备的命令行的保存方法和解码方法

Country Status (1)

Country Link
CN (1) CN102508690B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104022912A (zh) * 2013-02-28 2014-09-03 腾讯科技(深圳)有限公司 一种云测试方法及云测试服务器
CN106502207A (zh) * 2016-09-21 2017-03-15 珠海格力智能装备有限公司 数据解析方法及装置
CN111443915A (zh) * 2020-03-30 2020-07-24 山东华辰连科通信网络有限公司 一种在单片机上实现cli命令界面的方法和系统
CN111667217A (zh) * 2020-06-09 2020-09-15 宏图智能物流股份有限公司 一种仓库网络信息存储方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040148301A1 (en) * 2003-01-24 2004-07-29 Mckay Christopher W.T. Compressed data structure for a database
CN1845099A (zh) * 2006-04-27 2006-10-11 掌富科技(南京)有限公司 智能移动终端多媒体电子文档转换存储方法及转换存储结构
US20080235492A1 (en) * 2007-03-23 2008-09-25 Samsung Electronics Co., Ltd. Apparatus for compressing instruction word for parallel processing vliw computer and method for the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040148301A1 (en) * 2003-01-24 2004-07-29 Mckay Christopher W.T. Compressed data structure for a database
CN1845099A (zh) * 2006-04-27 2006-10-11 掌富科技(南京)有限公司 智能移动终端多媒体电子文档转换存储方法及转换存储结构
US20080235492A1 (en) * 2007-03-23 2008-09-25 Samsung Electronics Co., Ltd. Apparatus for compressing instruction word for parallel processing vliw computer and method for the same

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
孔祥柏: "一种数据代码压缩方法", 《中文信息学报》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104022912A (zh) * 2013-02-28 2014-09-03 腾讯科技(深圳)有限公司 一种云测试方法及云测试服务器
CN104022912B (zh) * 2013-02-28 2019-03-01 腾讯科技(深圳)有限公司 一种云测试方法及云测试服务器
CN106502207A (zh) * 2016-09-21 2017-03-15 珠海格力智能装备有限公司 数据解析方法及装置
CN106502207B (zh) * 2016-09-21 2019-01-01 珠海格力智能装备有限公司 数据解析方法及装置
CN111443915A (zh) * 2020-03-30 2020-07-24 山东华辰连科通信网络有限公司 一种在单片机上实现cli命令界面的方法和系统
CN111443915B (zh) * 2020-03-30 2023-05-16 山东华辰连科通信网络有限公司 一种在单片机上实现cli命令界面的方法和系统
CN111667217A (zh) * 2020-06-09 2020-09-15 宏图智能物流股份有限公司 一种仓库网络信息存储方法
CN111667217B (zh) * 2020-06-09 2022-07-12 宏图智能物流股份有限公司 一种仓库网络信息存储方法

Also Published As

Publication number Publication date
CN102508690B (zh) 2014-09-17

Similar Documents

Publication Publication Date Title
CN102541529B (zh) 一种查询页面生成装置和方法
CN100468402C (zh) 一种数据存储及查询方法
CN104360865A (zh) 一种序列化方法、反序列化方法及相关设备
WO2023131218A1 (zh) 图数据的存储
CN103020144B (zh) 文件管理系统和文件管理方法
CN102508690B (zh) 一种嵌入式设备的命令行的保存方法和解码方法
CN113901280B (zh) 一种集成电路展平式设计的字符串存储与查询系统及方法
CN114138193B (zh) 一种分区命名空间固态硬盘的数据写入方法、装置及设备
CN100464333C (zh) 文件分配系统中的文件名生成方法及生成装置
CN103345469A (zh) 号码集合的存储、查询方法及其装置
CN101901218A (zh) 一种通用数据入库装置及方法
WO2024055571A1 (zh) 一种namespace设置方法、装置及可读存储介质
CN103475584A (zh) 三态内容寻址存储器(tcam)查询方法和装置
CN104572685A (zh) 数据排序方法
CN104102586A (zh) 一种地址映射处理的方法、装置
US9292549B2 (en) Method and system for index serialization
CN105468793B (zh) 一种仿真模型数据的自动化管理方法
CN101576919B (zh) 标识生成方法和装置
CN101551820B (zh) 兴趣点属性的索引数据库的生成方法和装置
CN106802927A (zh) 一种数据存储方法及查询方法
CN110647577A (zh) 数据立方体的分区方法、装置、计算机设备及存储介质
CN103226592A (zh) 一种基于数据库的文件系统及文件存储方法
CN105468712A (zh) 一种数据存储兼容方法
CN101295312B (zh) 一种使用表格呈现数据的方法
CN100377158C (zh) 一种建立库文件的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant