[yargs]中命令和选项有什么区别

时间:2018-01-11 06:20:06

标签: node.js npm yargs

我使用yargs获取CLI参数想知道命令和选项之间的区别。

const argv = yargs
.command(
  'add',
  'Add a new note',
  {
    title: titleOptions,
    body: bodyOptions
  })
.argv;

const argv = yargs
.option('address', {
  alias: 'a',
  demand: true,
  describe: 'Address for fetching weather'
})
.help()
.alias('help', 'h')
.argv

1 个答案:

答案 0 :(得分:5)

一个区别是语义:命令执行操作,选项改变了操作的执行方式。另一个重要的区别是可以为选项分配值。例如:

git commit --message "Initial commit"

在上面的示例中,commit是命令,message是选项。 message选项的值为“初始提交”。您还可以选择没有值的选项,这些选项称为“标志”。

git fetch --no-tags

这里我们使用no-tags标志告诉Git从上游分支获取所有内容但排除标记。