Java 是否有虚线和参数的标准命令行约定?
关于何时使用2个破折号、1个破折号或完全不使用选项并按顺序读取输入,命令行约定是什么Java 是否有虚线和参数的标准命令行约定?,java,python,unix,command-line-arguments,Java,Python,Unix,Command Line Arguments,关于何时使用2个破折号、1个破折号或完全不使用选项并按顺序读取输入,命令行约定是什么 我知道有很多变体,但有哪种约定作为行业标准(比如Java、C或Python)脱颖而出吗?这取决于你的品味 Unix惯例是命令有两种形式:长和短(一个字符)。为了表示长形式,我们使用2个破折号--。例如--安装。短格式用一个破折号标记,例如-i 但没有规则没有例外。例如,java本身的命令行选项不遵循此约定:-cp和-classpath的含义相同,并且两者仅用一个破折号标记-版本没有短别名等 斜杠在windows
我知道有很多变体,但有哪种约定作为行业标准(比如Java、C或Python)脱颖而出吗?这取决于你的品味 Unix惯例是命令有两种形式:长和短(一个字符)。为了表示长形式,我们使用2个破折号--。例如
--安装。短格式用一个破折号标记,例如-i
但没有规则没有例外。例如,java本身的命令行选项不遵循此约定:-cp
和-classpath
的含义相同,并且两者仅用一个破折号标记<代码>-版本
没有短别名等
斜杠在windows应用程序中使用
作为java开发人员,我更喜欢使用独立于平台的约定(破折号)。此外,各种库(如雅加达项目中的库)都支持破折号,因此更容易实现 我同意@Nishant的观点,单破折号是更详细选项的简写符号。
请参阅Apache Commons CLI提供的ls示例,阅读Python的optparse模块,它回答了您的一些问题,并举例说明了一些常见的参数格式标准。optparse模块的作者推荐了一种大致对应于的样式,并添加了来自GNU编码标准的--double-spaush long参数。很多时候,单破折号是类似选项的快捷方式。例如,/cassandra.sh-h hostname
相当于双虚线版本/cassandra.sh——主机名
,还有类似的问题: