atitit.基于CommonsCLI的命令行原理与开发
1.命令行支持的格式有以下几种:1
2.json化,map化的命令行参数内部表示1
3.Aticli2
4.CLI库支持不同格式的选项: 2
5.参考3
1.命令行支持的格式有以下几种:基于ApacheCommonsCLI的命令行开发
ApacheCommonsCLI简介
ApacheCommonsCLI是Apache下面的一个解析命令行输入的工具包,该工具包还提供了自动生成输出帮助文档的功能。
ApacheCommonsCLI支持多种输入参数格式,主要支持的格式有以下几种:
1.POSIX(PortableOperatingSystemInterfaceofUnix)中的参数形式,例如tar-zxvffoo.tar.gz
2.GNU中的长参数形式,例如du--human-readable--max-depth=1
3.java命令中的参数形式,例如java-Djava.net.useSystemPRoxies=trueFoo
4.短杠参数带参数值的参数形式,例如gcc-O2foo.c
5.长杠参数不带参数值的形式,例如ant–projecthelp
作者::老哇的爪子Attilax艾龙,EMAIL:1466519819@QQ.com
转载请注明来源:http://www.VEVb.com/attilax/
2.json化,map化的命令行参数内部表示直接使用json会把个双引号消去。。不能解析了。。
ApacheCommonsCLI库提供API,可以帮助程序去解析传递给程序的命令行参数。他也可以打印帮助信息,来说明可以运用于命令行的有效参数。
3.AticliOptionsopts=newOptions();
opts.addOption("gene",false,"help:misparamdir");
opts.addOption("dir",true,"help:misparamdir");
opts.addOption("gene_txtfile",true,"help:misparamgene_batfile");
opts.addOption("gene_batfile",true,"help:misparamgene_batfile");
CommandLineParserparser=newPosixParser();
cmd=parser.parse(opts,args);
if(cmd.hasOption("gene"))
geneBat(cmd.getOptionValue("dir"),
cmd.getOptionValue("gene_txtfile"));
else
execClr(cmd.getOptionValue("dir"),
cmd.getOptionValue("gene_txtfile"));
System.out.println("--f");
4.CLI库支持不同格式的选项:1.POSIX格式的选项(比如:tar-zxvffoo.tar.gz)
2.GNU格式的长参数选项(比如:du--human-readable--max-depth=1)
3.Java格式的属性(比如:java-Djava.awt.headless=true-Djava.net.useSystemProxies=trueFoo)
4.带值的单选项(比如:gcc-O2foo.c)
5.单-号的长参数选项(比如:ant-projecthelp)
BasicParser类来解析用户输入的参数,当参数中包含–h时程序打印命令行的帮助
5.参考使用ApacheCommonsCLI开发命令行工具.htm
ApacheCommons系列简介之CLI-为程序员服务.htm
使用ApacheCommonsCLI开发命令行工具.htm
新闻热点
疑难解答