Node.js 使用node commander解析引号
我正在使用node commander编写一个命令行界面,并且一直在解析参数中的单引号。我搜索了文档和StackOverflow,没有找到任何结论 是否有方法传入包含单引号的参数Node.js 使用node commander解析引号,node.js,command-line-interface,node-commander,Node.js,Command Line Interface,Node Commander,我正在使用node commander编写一个命令行界面,并且一直在解析参数中的单引号。我搜索了文档和StackOverflow,没有找到任何结论 是否有方法传入包含单引号的参数 抽象出我所知道的工作原理,剩下的是一个CLI,其中运行: node test.js command 'value''s values' 使用以下程序(学分,用于简单的功能示例): #/usr/bin/env节点 "严格使用",; const program=需要(“指挥官”); 程序 .版本('0.0.1') .c
抽象出我所知道的工作原理,剩下的是一个CLI,其中运行:
node test.js command 'value''s values'
使用以下程序(学分,用于简单的功能示例):
#/usr/bin/env节点
"严格使用",;
const program=需要(“指挥官”);
程序
.版本('0.0.1')
.command('命令[可选]')
.操作(功能(请求,可选){
console.log('用户传递了%s',请求);
});
program.parse(process.argv);
结果是
用户传递的值
,它缺少参数第一个单词的单引号。所需的输出是用户传递值的值
您需要转义撇号。这将有助于:
node test.js命令'value'\'s values'
这是因为所谓的“强引用”。你可以阅读更多关于它的内容
强引用意味着这也将起作用:
node test.js命令“value's values”
您需要转义撇号。这将有助于:
node test.js命令'value'\'s values'
这是因为所谓的“强引用”。你可以阅读更多关于它的内容
强引用意味着这也将起作用:
node test.js命令“value's values”
Hmm!真丢脸——我曾在更广泛的程序中尝试过这一点,但它在那里不起作用,但看起来这是创建实际命令的脚本问题,而不是命令参数的解析问题。谢谢隐马尔可夫模型!真丢脸——我曾在更广泛的程序中尝试过这一点,但它在那里不起作用,但看起来这是创建实际命令的脚本问题,而不是命令参数的解析问题。谢谢
#!/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);