命令行参数是否有任何命名约定?
Are there any naming conventions for command line arguments?
我正在审查一个命令行驱动的 Java 应用程序,其命令行开关采用小驼峰式,如下所示:
myapp aSwitch anotherSwitch aThirdSwitch
我认为所有小写字母和前导连字符可能更可取:
myapp -aswitch -anotherswitch -athirdswitch
...或者也许:
myapp -a-switch -another-switch -a-third-switch
... 或者:
myapp --a-switch --another-switch --a-third-switch
但是很难找到令人信服的理由。希望遵循当前惯例并实现跨平台兼容,至少 Windows/Linux.
感谢您就其中最常用的约定及其背后的任何推理提出建议。
Apache Commons CLI有常用约定的说明。对于此类用例,它也是一个很好的解析器
我主要在 linux 上工作,但通常是
app -<option1> <option1 value> -<option2> <option2 value> -<option2> <option3 value>
如果每个选项都有要传递的值或参数
myapp -o1 aSwitch -o2 anotherSwitch -o3 aThirdSwitch
我正在审查一个命令行驱动的 Java 应用程序,其命令行开关采用小驼峰式,如下所示:
myapp aSwitch anotherSwitch aThirdSwitch
我认为所有小写字母和前导连字符可能更可取:
myapp -aswitch -anotherswitch -athirdswitch
...或者也许:
myapp -a-switch -another-switch -a-third-switch
... 或者:
myapp --a-switch --another-switch --a-third-switch
但是很难找到令人信服的理由。希望遵循当前惯例并实现跨平台兼容,至少 Windows/Linux.
感谢您就其中最常用的约定及其背后的任何推理提出建议。
Apache Commons CLI有常用约定的说明。对于此类用例,它也是一个很好的解析器
我主要在 linux 上工作,但通常是
app -<option1> <option1 value> -<option2> <option2 value> -<option2> <option3 value>
如果每个选项都有要传递的值或参数
myapp -o1 aSwitch -o2 anotherSwitch -o3 aThirdSwitch