通过插入而不是附加将参数传递给npm脚本命令

时间:2019-01-29 14:26:55

标签: npm npm-scripts

我想在命令内部的某处插入参数。以某种方式插值。例如:

{
    "scripts": {
        "foo": "git commit -am $message && git push"
    }
}

然后运行:

$ npm run foo -- --message "Baz"

或者类似这样的东西:

"foo": "git commit -am {0} && git push"

然后运行:

$ npm run foo -- "Lorem"
  

请注意,这里的git命令仅用于演示目的,我们有多个不同的命令。因此,Git别名不是解决方案。

有什么办法可以通过npm实现这种行为?

1 个答案:

答案 0 :(得分:0)

由于@RobC,事实证明我们可以为npm脚本指定外壳,因此在Windows上,我可以为其设置git bash并使用@RobC解决方案here

$ npm config set script-shell "C:\\Program Files\\git\\bin\\bash.exe"

package.json

"foo": "func() { echo \"$1\"; }; func"

然后运行:

$ npm start foo "lorem ipsum"
相关问题