使用节点指挥官解析报价



我正在使用节点指挥官编写命令行界面,并且坚持解析参数中的单引号。我已经搜索了文档和StackOverflow,没有找到任何结论。

有没有办法传入包含单引号的参数?


抽象出我知道的工作,我剩下的是一个运行的 CLI:

node test.js command 'value''s values'

使用以下程序(此处注明,用于一个简单的功能示例(:

#!/usr/bin/env node
'use strict';
const program = require('commander');
program
    .version('0.0.1')
    .command('command <req> [optional]')
    .action(function(req,optional){
        console.log('User passed %s', req);
    });
program.parse(process.argv);

结果是 User passed values values ,它缺少参数第一个单词的单引号。所需的输出为 User passed value's values

你需要转义撇号。这将起作用:

node test.js command 'value'''s values'

这是有效的,因为一种叫做"强引用"的东西。您可以在此处阅读有关它的更多信息。

强引用意味着这也将起作用:

node test.js command "value's values"

相关内容

  • 没有找到相关文章

最新更新