我有一个foo
使用Clap处理命令参数解析的程序。foo
调用另一个程序,bar
. 最近,我决定如果他们喜欢的话,我的用户foo
应该能够传递参数。bar
我将bar
命令添加到 Clap:
let matches = App::new("Foo")
.arg(Arg::with_name("file").value_name("FILE").required(true))
.arg(
Arg::with_name("bar")
.value_name("[BAR_OPTIONS]")
.short("b")
.long("bar")
.multiple(true)
.help("Invoke bar with these options"),
)
.get_matches();
当我尝试将命令传递"-baz=3"
给bar
这样的:
./foo -b -baz=3 file.txt
或者
./foo -b "-baz=3" file.txt
clap
返回此错误:
error: Found argument '-b' which wasn't expected, or isn't valid in this context
如何通过 Clap 隧道命令?