【发布时间】:2013-03-18 23:31:18
【问题描述】:
在阅读参数/标志时,他们是否有任何约定(书面或一般理解)何时使用 正斜杠 (/) 或 连字符 (-)从命令行?
C:\> myprogram.exe -a
C:\> myprogram.exe /a
根据我的经验,这两者似乎可以互换,但我没有使用足够多的命令行工具来说明我发现了任何规则或模式。
是否有充分的理由使用它们中的任何一个?如果我愿意,理论上可以使用星号 (*)吗?
【问题讨论】:
-
两者都应该可以正常工作。你可以注入你的自定义处理来解析你的参数。
-
在 Windows 上,您可以使用 /args。在 Unix、Linux 和 Windows 上,您应该使用 -x 表示单字母参数,使用 --xyz-abc 表示多字母参数。
-
Windows 中没有硬性规定,但
-在文件名中是完全合法的,而/则不是。因此 -option 可能是文件名,但 /option 不是。阿斯特里克斯是一个漫画人物。*是星号。 -
@PeterWright 哈哈哈,我认为这里的任何人都不会愚蠢到在这种情况下将两者混淆..但是感谢您指出文件名:)
标签: c# command-line console-application command-line-arguments