0

This is something I have seen many times in manuals, but never fully understood the syntax. When an argument is allowed to be an array of multiple values, what exactly does this syntax mean and how is it used to specify multiple args for the single flag/option?

command_name -f par_name=par_value[,par_name=par_value...]

Another common way I've seen this presented is:

usage: command_name [-f variable_list]

What is an example of this usage in practice? I have been trying with and without commas and brackets but nothing seems to be working.

4

3 回答 3

1
usage: command_name [-f variable_list]

这意味着command_namecommand_name -f variable_list都是有效的

command_name -f par_name=par_value[,par_name=par_value...]

这意味着:

command_name -f par_name=par_value

command_name -f par_name=par_value,par_name=par_value

command_name -f par_name=par_value,par_name=par_value,par_name=par_value

等都是有效的。

于 2013-07-20T16:52:09.423 回答
1
command_name -f par_name=par_value[,par_name=par_value...]

这里的括号实际上意味着这些选项是可选的。[]当您实际添加这些选项时,您不会添加括号。

因此,您可以省略额外的选项,例如:

command_name -f par_name=par_value

或者使用它:

command_name -f par_name=par_value,par_name=par_value

甚至更多。

于 2013-07-20T16:47:30.350 回答
0

这不是一个数组,而是一种扩展的BNF,其中方括号中的参数是可选的,花括号中的参数是可重复的,依此类推。

因此,例如对于您的第二个示例,您可以执行

command_name

或者

command_name -f variable_list
于 2013-07-20T16:50:51.817 回答