Groovy 如何从CliBuilder获取非选项参数?

Groovy 如何从CliBuilder获取非选项参数?,groovy,Groovy,我有史以来最简单的groovy脚本,试图找出CliBuilder。如何让CliBuilder在选项之外给我命令行参数?我的期望是像这样的命令行调用 ./hello.groovy -u robert Edward …将产生如下输出 ROBERT EDWARD 从我的来源,比如 #!/usr/bin/env groovy cli = new CliBuilder(usage:'hello.groovy [-hu] [name ...]') cli.with { h longOpt: 'hel

我有史以来最简单的groovy脚本,试图找出CliBuilder。如何让CliBuilder在选项之外给我命令行参数?我的期望是像这样的命令行调用

./hello.groovy -u robert Edward
…将产生如下输出

ROBERT EDWARD
从我的来源,比如

#!/usr/bin/env groovy
cli = new CliBuilder(usage:'hello.groovy [-hu] [name ...]')
cli.with {
  h longOpt: 'help', 'Show usage information'
  u longOpt: 'upper', 'uppercase eachg name'
}
options = cli.parse(args)
if(!options) {
  throw new IllegalStateException("WTF?!?")
}
if(options.h || options.arguments().isEmpty()) {
  cli.usage()
  return
}
println("$options.arguments()");

…但我不知道如何获取其余参数,即选项之外的参数。

如果
-u
只是一个标志,则不需要
-2

#!/usr/bin/env groovy

cli = new CliBuilder(usage:'hello.groovy [-hu] [name ...]')
cli.with {
  h longOpt: 'help', 'Show usage information'
  u longOpt: 'upper', 'uppercase eachg name'
}
options = cli.parse(args)
if(!options) {
  throw new IllegalStateException("WTF?!?")
}
if(options.h || options.arguments().isEmpty()) {
  cli.usage()
  return
}

if(options.u) {
    options.arguments().each { println it.toUpperCase() }
}
else {
    options.arguments().each { println it }
}

那么,
println“${options.arguments()}”
显示了什么呢?谢谢。文档没有说明这有多容易。我喜欢剪贴画。