專利名稱:可定制的命令行實(shí)現(xiàn)方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電信系統(tǒng)i殳備領(lǐng)域,更具體地,涉及一種可定制的 命令^f亍實(shí)方法和系統(tǒng)。
背景技術(shù):
對(duì)電信設(shè)備進(jìn)行數(shù)據(jù)配置和維護(hù)的時(shí)候, 一般都要提供命令行 的方式,這種命令行的操作方式帶來了一些問題,首先,從使用角 度來看,不同用戶對(duì)不同產(chǎn)品的操作習(xí)慣不同,目前的命令行實(shí)現(xiàn) 方式很難同時(shí)滿足這種差異性.從實(shí)現(xiàn)的角度而言,通常的實(shí)現(xiàn)方式 是,每次增加或者修改一條命令,都要修改代碼,重新編譯和連接, 需要進(jìn)行版本升級(jí)等大量的工程維護(hù)工作,影響面比較大.此外,代 碼修改比較頻繁,程序也容易出錯(cuò)。
因而,急需 一種方案能夠基于xml文件實(shí)現(xiàn)電信設(shè)備的用戶可 配置的人機(jī)命令。
發(fā)明內(nèi)容
為了解決現(xiàn)有沖支術(shù)中的諸如用戶要求增加或者^f奮改一條命令行 需要修改版本代碼等的問題,本發(fā)明提供了 一種可定制的命令行實(shí) 現(xiàn)方法和系統(tǒng),如果用戶要求增加或者修改一條命令行,只需要修 改樹狀配置文件,不需要修改版本代碼,就可以滿足不同的用戶需
要。另外本發(fā)明的命令行實(shí)現(xiàn)方法實(shí)現(xiàn)了才莫塊化和通用化,可以作 為電信領(lǐng)域的通用的命令行模塊。
本發(fā)明的 一 個(gè)方面提供了 一種可定制的命令行實(shí)現(xiàn)方法,其可
以包括以下步驟步驟1,根據(jù)用戶的要求,在配置文件中定義命 令行格式;步驟2,系統(tǒng)啟動(dòng)時(shí),加載配置文件,在內(nèi)存中生成命 令行配置樹;步驟3,在收到用戶輸入的一條命令行時(shí),按照命令 行配置樹對(duì)命令行進(jìn)行解析以產(chǎn)生命令消息,并得到響應(yīng)消息處理 節(jié)點(diǎn);步驟4,將命令消息發(fā)送給目標(biāo)對(duì)象后等待響應(yīng)消息;以及 步驟5,響應(yīng)消息處理節(jié)點(diǎn)處理響應(yīng)消息,并將結(jié)果顯示給用戶。
其中,配置文件中的每一項(xiàng)對(duì)應(yīng)于命令行配置樹中的一個(gè)節(jié)點(diǎn), 以及配置文件中的每一項(xiàng)的屬性值對(duì)應(yīng)于每個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)信息。
節(jié)點(diǎn)信息包括以下任一種或組合節(jié)點(diǎn)類型、節(jié)點(diǎn)值、節(jié)點(diǎn)值 在命令中的偏移量、節(jié)點(diǎn)占有位、以及幫助信息。節(jié)點(diǎn)類型包括 第一層節(jié)點(diǎn)、中間層節(jié)點(diǎn)、葉節(jié)點(diǎn)、以及參數(shù)節(jié)點(diǎn)。
另外,葉節(jié)點(diǎn)還包括對(duì)應(yīng)的響應(yīng)消息解析節(jié)點(diǎn)描述,以及參數(shù) 節(jié)點(diǎn)包括表示參數(shù)為可選參數(shù)或必選參數(shù)的字段。
響應(yīng)消息處理節(jié)點(diǎn)是通過響應(yīng)消息解析節(jié)點(diǎn)描述得到的。
可定制的命令行實(shí)現(xiàn)方法還可以包括以下步驟系統(tǒng)啟動(dòng)后, 用戶通過系統(tǒng)本身提供的用戶擴(kuò)展命令對(duì)命令行的格式實(shí)時(shí)地修 改、增加、刪除和存^f渚。
本發(fā)明還提供了一種可定制的命令行實(shí)現(xiàn)系統(tǒng),包括配置模 塊,用于根據(jù)用戶的要求,在配置文件中定義命令行格式;持續(xù)化 才莫塊,用于在系統(tǒng)啟動(dòng)時(shí),加載配置文件,在內(nèi)存中生成命4M亍配 置樹;用戶輸入輸出模塊,用于由用戶輸入命令行;命令行解析模
塊,用于在收到來自用戶輸入輸出模塊的一條命令行時(shí),按照命令 行配置樹對(duì)命令行進(jìn)行解析以產(chǎn)生命令消息,并得到響應(yīng)消息處理
節(jié)點(diǎn),響應(yīng)消息處理節(jié)點(diǎn)處理響應(yīng)消息,并將結(jié)果顯示鄉(xiāng)合用戶;以 及消息處理模塊,用于將命令消息發(fā)送給目標(biāo)對(duì)象后等待響應(yīng)消息。
其中,配置文件中的每一項(xiàng)對(duì)應(yīng)于命令4亍配置杉于中的一個(gè)節(jié)點(diǎn), 以及配置文件中的每一 項(xiàng)的屬性值對(duì)應(yīng)于每個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)信息。
節(jié)點(diǎn)信息包括以下任一種或組合節(jié)點(diǎn)類型、節(jié)點(diǎn)值、節(jié)點(diǎn)值 在命令中的偏移量、節(jié)點(diǎn)占有位、以及幫助信息。節(jié)點(diǎn)類型包括 第一層節(jié)點(diǎn)、中間層節(jié)點(diǎn)、葉節(jié)點(diǎn)、以及參數(shù)節(jié)點(diǎn)。
另外,葉節(jié)點(diǎn)還包括對(duì)應(yīng)的響應(yīng)消息解析節(jié)點(diǎn)描述,以及參凄t 節(jié)點(diǎn)包括表示參數(shù)為可選參數(shù)或必選參數(shù)的字段。響應(yīng)消息處理節(jié) 點(diǎn)是通過響應(yīng)消息解析節(jié)點(diǎn)描述得到的。
因而,采用本發(fā)明,可以滿足不同用戶乂寸不同產(chǎn)品的差異性需 求,即,用戶可以根據(jù)自己的習(xí)慣定制命令行格式,而不需要修改 程序代碼。
本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部 分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā) 明的目的和其他優(yōu)點(diǎn)可通過在所寫的說明書、權(quán)利要求書、以及附 圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。
附圖用來纟是供對(duì)本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部 分,與本發(fā)明的實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的 限制。在附圖中
圖1是根據(jù)本發(fā)明的可定制的命令行實(shí)現(xiàn)方法的流程圖2是本發(fā)明中的命令行系統(tǒng)的功能結(jié)構(gòu)圖3是本發(fā)明中的命令行系統(tǒng)的凄t據(jù)結(jié)構(gòu)圖4是根據(jù)本發(fā)明實(shí)施例的執(zhí)行一條命令的處理過程的流程 圖;以及
圖5是根據(jù)本發(fā)明的可定制的命令行實(shí)現(xiàn)系統(tǒng)的框圖。
具體實(shí)施例方式
以下結(jié)合附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說明,應(yīng)當(dāng)理解,此 處所描述的優(yōu)選實(shí)施例^又用于i兌明和解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明的方法的思想為
一、 事先根據(jù)目標(biāo)用戶的習(xí)慣,在xml文件中定義命令行格式. 其中對(duì)每一個(gè)節(jié)點(diǎn)定義其屬性,比如要修改的目標(biāo)對(duì)象、格式、取 值范圍、幫助i兌明、以及對(duì)應(yīng)的回應(yīng)消息解析節(jié)點(diǎn)等;
二、 系統(tǒng)啟動(dòng)時(shí),命令行模塊加載上面的xml配置文件,在內(nèi) 存中生成一個(gè)命令行配置樹;
三、 用戶輸入一條命令行時(shí),4安照上面生成的命令行配置樹進(jìn) 行匹配,根據(jù)匹配結(jié)果填充命令行的消息字段.如果匹配不成功,提 示錯(cuò)誤信息.如果匹配成功,將配置消息通過消息發(fā)送模塊將命令 發(fā)送給目標(biāo)對(duì)象,同時(shí)等待目標(biāo)對(duì)象的回應(yīng),.收到回應(yīng)消息后,才艮 據(jù)匹配的解析節(jié)點(diǎn),對(duì)回應(yīng)消息進(jìn)行解析,并將解析結(jié)果返回給用 戶界面;以及
四、如果在系統(tǒng)啟動(dòng)之后,系統(tǒng)在運(yùn)行之中時(shí),用戶想增加一 條新的命令,或者想^修改現(xiàn)有的一條命令才各式,為此,本發(fā)明的命 令行系統(tǒng)本身還提供了幾個(gè)用戶擴(kuò)展命令,可以用來對(duì)命令行的格 式實(shí)時(shí)地l奮改,增加,刪除和存盤.方Y(jié)更用戶^f吏用和擴(kuò)展。
圖1是根據(jù)本發(fā)明的可定制的命令行實(shí)現(xiàn)方法的流程圖,如圖
l所示,該方法包纟舌以下步驟
步驟S102,根據(jù)用戶的要求,在配置文件中定義命令行格式;
步驟S104,系統(tǒng)啟動(dòng)時(shí),加載配置文件,在內(nèi)存中生成命令行 配置樹;
步驟S106,在收到用戶輸入的一條命令行時(shí),按照命令行配置 樹對(duì)命令行進(jìn)行解析以產(chǎn)生命令消息,并得到響應(yīng)消息處理節(jié)點(diǎn);
步驟S108,將命令消息發(fā)送給目標(biāo)對(duì)象后等待響應(yīng)消息;以及
步驟SllO,響應(yīng)消息處理節(jié)點(diǎn)處理響應(yīng)消息,并將結(jié)果顯示纟合 用戶。
其中,配置文件中的每一項(xiàng)對(duì)應(yīng)于命令行配置樹中的一個(gè)節(jié)點(diǎn), 以及配置文件中的每一項(xiàng)的屬性值對(duì)應(yīng)于每個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)信息。
節(jié)點(diǎn)信息包括以下任一種或組合節(jié)點(diǎn)類型、節(jié)點(diǎn)值、節(jié)點(diǎn)值 在命令中的偏移量、節(jié)點(diǎn)占有位、以及幫助信息。節(jié)點(diǎn)類型包括
第一層節(jié)點(diǎn)、中間層節(jié)點(diǎn)、葉節(jié)點(diǎn)、以及參數(shù)節(jié)點(diǎn)。
另夕卜,葉節(jié)點(diǎn)還包括對(duì)應(yīng)的響應(yīng)消息解析節(jié)點(diǎn)描述,以及參數(shù) 節(jié)點(diǎn)包括表示參數(shù)為可選參數(shù)或必選參數(shù)的字段。
響應(yīng)消息處理節(jié)點(diǎn)是通過響應(yīng)消息解析節(jié)點(diǎn)描述得到的。
汰A—。j以B才吞以—卜,1《系鄉(xiāng)充啟動(dòng)后, 用戶通過系統(tǒng)本身4是供的用戶擴(kuò)展命令對(duì)命令行的才各式實(shí)時(shí)地{奮 改、增加、刪除和存儲(chǔ)。
圖2是本發(fā)明中的命令行系統(tǒng)的功能結(jié)構(gòu)圖,如圖2所示,該 系統(tǒng)包括消息通訊模塊、命令行解析模塊、用戶輸入模塊、以及 IO持續(xù)化模塊。
圖3是本發(fā)明中的命令行系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)圖,其中,整個(gè)命令 行為一樹型結(jié)構(gòu),命令行是由一個(gè)個(gè)的節(jié)點(diǎn)組合而成,每個(gè)節(jié)點(diǎn)都 有一些屬性,例如,節(jié)點(diǎn)類型、對(duì)象標(biāo)識(shí)號(hào)、命令號(hào)。
圖4是根據(jù)本發(fā)明實(shí)施例的執(zhí)行一條命令的處理過程的流程 圖,以下將參考圖2和圖3來詳細(xì)描述圖4的過程。
如圖4所示,具體處理流禾呈如下:
S402,當(dāng)系統(tǒng)啟動(dòng)時(shí),IO持續(xù)化模塊讀入xml配置文件,解析 成樹狀數(shù)據(jù)結(jié)構(gòu),xml中的每一項(xiàng)對(duì)應(yīng)樹狀結(jié)構(gòu)中的一個(gè)節(jié)點(diǎn).xml 中的各個(gè)屬性值也讀入節(jié)點(diǎn)信息中,最后生成整個(gè)如圖3所示的樹
型數(shù)據(jù)結(jié)構(gòu);
S404,用戶輸入模塊開始工作,接收用戶的輸入;
S406,用戶輸入模塊收到用戶的命令行時(shí),發(fā)送到解析模塊去 解析;
S408,解析模塊經(jīng)過解析后,產(chǎn)生命令消息,同時(shí)根據(jù)葉節(jié)點(diǎn) 中的響應(yīng)消息解析節(jié)點(diǎn)描述得到對(duì)應(yīng)的響應(yīng)消息處理節(jié)點(diǎn),通過消 息處理模塊,發(fā)送到目標(biāo)對(duì)象,之后等待響應(yīng)消息;以及
S410,解析模塊收到響應(yīng)消息后,將消息送到對(duì)應(yīng)的響應(yīng)消息 處理節(jié)點(diǎn)去處理,最后將處理結(jié)果顯示給用戶。
其中,節(jié)點(diǎn)信息包括如下內(nèi)容節(jié)點(diǎn)類型、節(jié)點(diǎn)值、節(jié)點(diǎn)值在 命令中的偏移量、節(jié)點(diǎn)占用位數(shù)、幫助信息等,而葉節(jié)點(diǎn)除了上面 的字段外,還有對(duì)應(yīng)的響應(yīng)消息解析節(jié)點(diǎn)描述,表示對(duì)應(yīng)的響應(yīng)消 息的解析方法。參數(shù)節(jié)點(diǎn)還包括一個(gè)表示本參數(shù)是可選還是必選的 字段,表示該參數(shù)是必選參數(shù)還是可選參fc以及表示值范圍的最 大和最小值。
以下結(jié)合實(shí)施例,對(duì)上述各步驟進(jìn)行詳細(xì)說明。
例如,我們現(xiàn)在要增加一條增加v5接口的命令,命令需要帶上 兩個(gè)變量接口 ID和接口變量,要求以一定的消息格式發(fā)送給目標(biāo) 對(duì)象,假如我們這里定義的消息格式如下
OLD:8Command: 16V5id:32Var:16
上面oid表示命令行消息要發(fā)送的目標(biāo)對(duì)象,本例中為V5對(duì)象 (假設(shè)為33), command為對(duì)目標(biāo)對(duì)象的操作,本例為增加接口(假設(shè) 為4), v5id為要增加的v5 4妄口的標(biāo)識(shí)號(hào),var為v5 4妄口的變量. 上面冒號(hào)后面的數(shù)字表示各字段占用的比特位數(shù)。
4艮i殳我們i殳i十的命令4亍為V5 inf add id x var y (其中x為要 創(chuàng)建的v5id值,y為變量值),則對(duì)應(yīng)的xml配置文件為
<root type = 'node' helpinfo = V5,> <v5 type = 'node' value = '33' offset = '1' size=,8, helpinfo = V5'><inf type = 'node' helpinfo = 'v5 inf [add]' >
<add type = 'leaf value = '4' offset=,2, size=,16, helpinfo ='id: v5 interface id
| var: v5 variable
' resultresolve ="v5command">
<id type = 'int' offset = '3' size = '32' minvalue = '0' maxvalue = '16777215' option = 'M' /〉
<var type = 'int' offset = '4' size = '16' minvalue = '0' maxvalue = '65535' option = 'M7>
</add>
</inf>
</v5〉
<response〉
<v5 command node = 'leaf,〉
<v5id type = 'int' offset = '1, size = '32' />
<result type = 'string' offset =,2, /〉
</v5command>
</response〉
</root>
上面helpinfo字4殳為幫助4言息。
下面對(duì)照?qǐng)D2對(duì)此xml配置進(jìn)行說明,root才艮節(jié)點(diǎn)下面第一層 節(jié)點(diǎn)為V5,該節(jié)點(diǎn)的信息為:偏移量為1,值為33,占一個(gè)字節(jié), 實(shí)際上就是oid對(duì)應(yīng)的字段.V5節(jié)點(diǎn)下面的inf節(jié)點(diǎn)為中間節(jié)點(diǎn),inf 節(jié)點(diǎn)下面為葉節(jié)點(diǎn)add,其偏移量為2, <直為4,占16比特^i,實(shí) 際上;t無只于應(yīng)著消息內(nèi)容中的command字,殳.葉節(jié)點(diǎn)中的resultresolve 屬寸生為v5command,表示只于命令的響應(yīng)內(nèi)容i姿照、response項(xiàng)下的 v5command項(xiàng)的描述來進(jìn)行解析.葉節(jié)點(diǎn)add下面為參數(shù)節(jié)點(diǎn),id 和var分別只于應(yīng)消息內(nèi)容中的id和var字^殳,option屬性<直為M, 表示該字革殳為必選項(xiàng),在人才幾命令中必須提供。
因此,4妾收到用戶輸入"V5 infaddidxvary"時(shí),解析才莫塊產(chǎn) 生的消息內(nèi)容為
33:84:16x:32y:16
經(jīng)消息處理對(duì)象發(fā)送給目標(biāo)對(duì)象,等待響應(yīng),收到響應(yīng)消息后,
按照v5command項(xiàng)進(jìn)行解析,前4個(gè)字節(jié)為對(duì)應(yīng)的v5id,后面的字 節(jié)為表示創(chuàng)建結(jié)果字符串描述.最后將此結(jié)果顯示給用戶。
圖5是根據(jù)本發(fā)明的可定制的命令行實(shí)現(xiàn)系統(tǒng)500的框圖。如 圖5所示,該系統(tǒng)包括配置模塊502,用于根據(jù)用戶的要求,在 配置文件中定義命令行格式;持續(xù)化模塊504,用于在系統(tǒng)啟動(dòng)時(shí), 加載配置文件,在內(nèi)存中生成命令行配置樹;用戶輸入輸出才莫塊 506,用于由用戶輸入命令行;命令行解析4莫塊508,用于在收到來 自用戶輸入輸出模塊506的一條命令行時(shí),按照命令行配置樹對(duì)命 令行進(jìn)行解析以產(chǎn)生命令消息,并得到響應(yīng)消息處理節(jié)點(diǎn),響應(yīng)消 息處理節(jié)點(diǎn)處理響應(yīng)消息,并將結(jié)果顯示^合用戶;以及消息處理才莫 塊510,用于將命令消息發(fā)送給目標(biāo)對(duì)象后等待響應(yīng)消息。
其中,配置文件中的每一項(xiàng)對(duì)應(yīng)于命令行配置樹中的一個(gè)節(jié)點(diǎn), 以及配置文件中的每一項(xiàng)的屬性值對(duì)應(yīng)于每個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)信息。
節(jié)點(diǎn)信息包括以下任一種或組合節(jié)點(diǎn)類型、節(jié)點(diǎn)值、節(jié)點(diǎn)值 在命令中的偏移量、節(jié)點(diǎn)占有位、以及幫助信息。節(jié)點(diǎn)類型包括
第一層節(jié)點(diǎn)、中間層節(jié)點(diǎn)、葉節(jié)點(diǎn)、以及參數(shù)節(jié)點(diǎn)。
另外,葉節(jié)點(diǎn)還包括對(duì)應(yīng)的響應(yīng)消息解析節(jié)點(diǎn)描述,以及參數(shù) 節(jié)點(diǎn)包括表示參數(shù)為可選參數(shù)或必選參數(shù)的字段。響應(yīng)消息處理節(jié) 點(diǎn)是通過響應(yīng)消息解析節(jié)點(diǎn)描述得到的。
綜上所述,采用本發(fā)明的方法和系統(tǒng),可以滿足不同用戶只于不 同產(chǎn)品的差異性需求,即,用戶可以根據(jù)自己的習(xí)慣定制命令行格 式,而不需要修改程序代碼。
以上僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì) 于本領(lǐng)域的技術(shù)人員來i兌,本發(fā)明可以有各種更改和變化。凡在本 發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均 應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種可定制的命令行實(shí)現(xiàn)方法,其特征在于,包括以下步驟步驟1,根據(jù)用戶的要求,在配置文件中定義命令行格式;步驟2,系統(tǒng)啟動(dòng)時(shí),加載所述配置文件,在內(nèi)存中生成命令行配置樹;步驟3,在收到所述用戶輸入的一條命令行時(shí),按照所述命令行配置樹對(duì)所述命令行進(jìn)行解析以產(chǎn)生命令消息,并得到響應(yīng)消息處理節(jié)點(diǎn);步驟4,將所述命令消息發(fā)送給目標(biāo)對(duì)象后等待響應(yīng)消息;以及步驟5,所述響應(yīng)消息處理節(jié)點(diǎn)處理所述響應(yīng)消息,并將結(jié)果顯示給所述用戶。
2. 根據(jù)權(quán)利要求1所述的可定制的命令行實(shí)現(xiàn)方法,其特征在 于,所述配置文件中的每一項(xiàng)對(duì)應(yīng)于所述命令4亍配置樹中的一 個(gè)節(jié)點(diǎn),以及所述配置文件中的每一項(xiàng)的屬性值對(duì)應(yīng)于每個(gè)所 述節(jié)點(diǎn)的節(jié)點(diǎn)信息。
3. 根據(jù)權(quán)利要求2所述的可定制的命令行實(shí)現(xiàn)方法,其特征在 于,所述節(jié)點(diǎn)信息包括以下任一種或組合節(jié)點(diǎn)類型、節(jié)點(diǎn)值、 節(jié)點(diǎn)值在命令中的偏移量、節(jié)點(diǎn)占有位、以及幫助信息。
4. 根據(jù)權(quán)利要求3所述的可定制的命令行實(shí)現(xiàn)方法,其特征在 于,所述節(jié)點(diǎn)類型包括第一層節(jié)點(diǎn)、中間層節(jié)點(diǎn)、葉節(jié)點(diǎn)、 以及參lt節(jié)點(diǎn)。
5. 根據(jù)權(quán)利要求4所述的可定制的命令行實(shí)現(xiàn)方法,其特征在 于,所述葉節(jié)點(diǎn)還包括「對(duì)應(yīng)的響應(yīng)消息解沖斤節(jié)點(diǎn)描述,以及所 述參數(shù)節(jié)點(diǎn)包括表示參數(shù)為可選參lt或必選參ft的字,it。
6. 根據(jù)權(quán)利要求5所述的可定制的命令行實(shí)現(xiàn)方法,其特征在 于,所述響應(yīng)消息處理節(jié)點(diǎn)是通過所述響應(yīng)消息解析節(jié)點(diǎn)描述 得到的。
7. 根據(jù)權(quán)利要求1所述的可定制的命令行實(shí)現(xiàn)方法,其特征在 于,還包4舌以下步-驟所述系統(tǒng)啟動(dòng)后,所述用戶通過所述系統(tǒng)本身才是供的用戶 擴(kuò)展命令對(duì)命令行的格式實(shí)時(shí)地修改、增加、刪除和存儲(chǔ)。
8. —種可定制的命令行實(shí)現(xiàn)系統(tǒng),其特征在于,包括配置模塊,用于根據(jù)用戶的要求,在配置文件中定義命令 行格式;持續(xù)化才莫塊,用于在系統(tǒng)啟動(dòng)時(shí),加載所述配置文件,在 內(nèi)存中生成命令行配置杉于;用戶輸入輸出模塊,用于由所述用戶輸入命令行;命令行解析模塊,用于在收到來自所述用戶輸入輸出模塊 的 一條命令行時(shí),按照所述命令4于配置樹對(duì)所述命令行進(jìn)行解 析以產(chǎn)生命令消息,并得到響應(yīng)消息處理節(jié)點(diǎn),所述響應(yīng)消息 處理節(jié)點(diǎn)處理所述響應(yīng)消息,并將結(jié)果顯示給所述用戶;以及消息處理才莫塊,用于將所述命令消息發(fā)送給目標(biāo)對(duì)象后等 ;降響應(yīng)消息。
9. 根據(jù)權(quán)利要求8所述的可定制的命令行實(shí)現(xiàn)系統(tǒng),其特征在 于,所述配置文^f牛中的每一項(xiàng)只于應(yīng)于所述命令4亍配置樹中的一 個(gè)節(jié)點(diǎn),以及所述配置文件中的每一項(xiàng)的屬性值對(duì)應(yīng)于每個(gè)所 述節(jié)點(diǎn)的節(jié)點(diǎn)信息。
10. 根據(jù)權(quán)利要求9所述的可定制的命令行實(shí)現(xiàn)系統(tǒng),其特征在 于,所述節(jié)點(diǎn)信息包括以下任一種或組合節(jié)點(diǎn)類型、節(jié)點(diǎn)值、 節(jié)點(diǎn)值在命令中的偏移量、節(jié)點(diǎn)占有位、以及幫助信息。
11. 根據(jù)權(quán)利要求10所述的可定制的命令行實(shí)現(xiàn)系統(tǒng),其特征在 于,所述節(jié)點(diǎn)類型包括第一層節(jié)點(diǎn)、中間層節(jié)點(diǎn)、葉節(jié)點(diǎn)、 以及參^t節(jié)點(diǎn)。
12. 根據(jù)權(quán)利要求11所述的可定制的命令行實(shí)現(xiàn)系統(tǒng),其特征在 于,所述葉節(jié)點(diǎn)還包括對(duì)應(yīng)的響應(yīng)消息解析節(jié)點(diǎn)描述,以及所 述參數(shù)節(jié)點(diǎn)包括表示參數(shù)為可選參lt或必選參數(shù)的字4殳。
13. 根據(jù)權(quán)利要求12所述的可定制的命令行實(shí)現(xiàn)系統(tǒng),其特征在 于,所述響應(yīng)消息處理節(jié)點(diǎn)是通過所述響應(yīng)消息解析節(jié)點(diǎn)描述 得到的。
全文摘要
本發(fā)明提供了一種可定制的命令行實(shí)現(xiàn)方法和系統(tǒng),其中,該方法可以包括以下步驟步驟1,根據(jù)用戶的要求,在配置文件中定義命令行格式;步驟2,系統(tǒng)啟動(dòng)時(shí),加載配置文件,在內(nèi)存中生成命令行配置樹;步驟3,在收到用戶輸入的一條命令行時(shí),按照命令行配置樹對(duì)命令行進(jìn)行解析以產(chǎn)生命令消息,并得到響應(yīng)消息處理節(jié)點(diǎn);步驟4,將命令消息發(fā)送給目標(biāo)對(duì)象后等待響應(yīng)消息;以及步驟5,響應(yīng)消息處理節(jié)點(diǎn)處理響應(yīng)消息,并將結(jié)果顯示給用戶。從而,可以滿足不同用戶對(duì)不同產(chǎn)品的差異性需求,即,用戶可以根據(jù)自己的習(xí)慣定制命令行格式,而不需要修改程序代碼。
文檔編號(hào)G06F9/44GK101110703SQ200710127770
公開日2008年1月23日 申請(qǐng)日期2007年6月28日 優(yōu)先權(quán)日2007年6月28日
發(fā)明者余曉文, 朱丹緋, 田小渝, 輝 鄧 申請(qǐng)人:中興通訊股份有限公司