基本概念

控制程序逻辑的附加输入、并且具有名称标识的数据叫做选项(Options),选项名称以-或者--字符串作为前缀,选项是无序的,可以放置于命令行中任意位置。选项可以带有数据,也可以不带数据。在其他类似的第三方功能组件里面,选项的功能类似于标识(Flag)。

此外,根据传统的命令行管理习惯,选项可以设置缩写别名(Short),用于简化命令行参数输入。缩写别名往往设定为一个单字母。

选项位置与=

其中,

  • gf/build/是参数,索引分别为 0, 1, 2;因为参数是有序性的,因此无论命令行怎么修改,这三者的顺序却无法改变
  • yes是不带数据的选项,也可以随意放置位置

命令行的选项与数据之间可以通过空格,也可以通过=符号进行连接,如:

默认解析规则

在默认规则下,

  • gf/build/main.go是参数,索引分别为 0, 1, 2。
  • /o/n/yes将会被解析为选项,并且yes为无数据选项。

在默认规则下,

  • a/o/n/yes将会被解析为选项,并且yes为无数据选项。