npm run-script escape用户提供的参数,带有单引号

时间:2016-10-25 17:31:24

标签: bash npm

我的package.json文件包含以下内容:

"scripts": {
   "run-me": "echo"
}

然后我可以运行run-me脚本,传入一个参数(注意单引号):

npm run-script run-me '$40$30$20'

它运行以下命令(注意双引号):

echo "$40$20$30"

打印

000

实际希望npm run-script run-me运行的命令是相同的,但在参数周围有单引号:

echo '$40$30$20'

将按照我的预期打印:

$40$30$20

所以我需要一种方法告诉npm run-script用单引号来逃避我的论点。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

这是达到同样目的的另一种方法。

<强>的package.json

{
    "scripts": {
        "run-me": "echo $value"
    }
}

<强>结果

value="$40$30$20" npm run-script run-me
> echo $value    
000

value='$40$30$20' npm run-script run-me
> echo $value
$40$30$20