我使用的是command .js包来解析命令行参数:我想把标志设置为非可选的,git仓库中的API和测试松散地提到了把标志设置为必需的,但我通常需要用指令来敲我的头。
这实际上是可能的吗?如果不满足需求,脚本会抛出吗?
我猜command .js不支持这个https://github.com/visionmedia/commander.js/issues/44
但是你可以在你的程序中这样做-
if (!program.myoption)
throw new Error('--myoption required')
这取决于你如何写参数。
-
<>
是必需的。 - 使用
[]
时不需要。
为例。
const commander = require('commander')
, program = new commander.Command()
program
.command('autorecord')
.argument('<title>', 'Title and file name of record') // is required
.argument('[type]', 'Type of record. "undefined" by default') // is not required