^ 节点脚本参数中的字符
^ Character in Node Script Arguments
我有一个接收以下参数的节点脚本:^PPP
.
我调用脚本如下:npm run scriptName ^PPP
.
但是在脚本中,如果我执行 console.log(process.argv)
,输出将我的参数显示为 PPP
。
我尝试将字符转义为 npm run scriptName \^PPP
和 npm run scriptName "^PPP"
但无济于事。
请帮助我如何从参数中接收原始字符串。
PowerShell 到 运行 命令和 v10.16.2 节点版本
这取决于您的终端。
我用
制作了一个名为 args.js 的简单脚本
console.log(process.argv);
在 windows 或 WSL (Ubuntu) 上使用 git bash,调用
$node args.js ^PPPP
输出
[ 'node/path',
'path/to/args.js',
'^PPPP' ]
使用 windows cmd 终端,调用
>node args.js ^PPPP
输出
[ 'C:\Program Files\nodejs\node.exe',
'C:\workspace\tests\args.js',
'PPPP' ]
并调用
>node args.js ^^PPPP
输出
[ 'C:\Program Files\nodejs\node.exe',
'C:\workspace\tests\args.js',
'^PPPP' ]
所以如果你使用Windows的终端,你需要加倍^
字符()。在其他终端上,它似乎工作正常。
编辑: 要从 npm run
向您的节点脚本添加参数,您需要像这样用 --
将它们分开:
>npm run scriptName -- ^^PPP
我有一个接收以下参数的节点脚本:^PPP
.
我调用脚本如下:npm run scriptName ^PPP
.
但是在脚本中,如果我执行 console.log(process.argv)
,输出将我的参数显示为 PPP
。
我尝试将字符转义为 npm run scriptName \^PPP
和 npm run scriptName "^PPP"
但无济于事。
请帮助我如何从参数中接收原始字符串。
PowerShell 到 运行 命令和 v10.16.2 节点版本
这取决于您的终端。
我用
制作了一个名为 args.js 的简单脚本console.log(process.argv);
在 windows 或 WSL (Ubuntu) 上使用 git bash,调用
$node args.js ^PPPP
输出
[ 'node/path', 'path/to/args.js', '^PPPP' ]
使用 windows cmd 终端,调用
>node args.js ^PPPP
输出
[ 'C:\Program Files\nodejs\node.exe', 'C:\workspace\tests\args.js', 'PPPP' ]
并调用
>node args.js ^^PPPP
输出
[ 'C:\Program Files\nodejs\node.exe', 'C:\workspace\tests\args.js', '^PPPP' ]
所以如果你使用Windows的终端,你需要加倍^
字符(
编辑: 要从 npm run
向您的节点脚本添加参数,您需要像这样用 --
将它们分开:
>npm run scriptName -- ^^PPP