python2.7/3.2 引入了一个 argparse 的module
https://docs.python.org/2/library/argparse.html
https://docs.python.org/3.5/library/argparse.htmlhtml
import argparse # 建立parser parser = argparse.ArgumentParser(description='Process some integers.') # 建立参数 # 'integers' -> 没有 - 开头,建立的是 positional argument # metavar='N' -> 在usage中显示为 N, 而不是 integers # type=int # nargs='+' -> 至少一个值 # help='...' -> 帮助信息 parser.add_argument('integers', metavar='N', type=int, nargs='+', help='an integer for the accumulator') # '--sum' -> 有 - 开头,建立的是 optional argument # dest='accumulate' -> 最终访问的成员名,默认是sum # action='store_const' -> 存储const的值 # const=sum -> 空参数是sum # default=max -> 默认参数是max parser.add_argument('--sum', dest='accumulate', action='store_const', const=sum, default=max, help='sum the integers (default: find the max)') # parse参数 parser.parse_args(['--sum', '7', '-1', '42'])
<dependency> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> <version>1.4-SNAPSHOT</version> </dependency>
// create Options object Options options = new Options(); // add t option options.addOption("t", false, "display current time"); // parse options CommandLineParser parser = new DefaultParser(); CommandLine cmd = parser.parse(options, args); if(cmd.hasOption("t")) { // print the date and time } else { // print the date }