如何在package.json脚本中传递参数并将这些参数用作变量?

时间:2019-11-07 00:41:18

标签: git npm package.json npm-scripts

"scripts": {
    "cr": "git commit -am ${message} && git pull origin master --rebase && git push --force",
}

我正在尝试找出类似的方法来运行以上代码:

# yarn cr "commit message"

2 个答案:

答案 0 :(得分:1)

是的。 你可以做这样的事情

"scripts": {
{
  "cr": "f(){ git commit -am $1;};f",

}
}

yarn run cr -- 'commit message'

您可以传递n个以空格分隔的参数,并且可以通过$ 1,$ 2 ..

访问。

答案 1 :(得分:0)

模式sh -c 'shell_command'适用于* nix Windows Powershell 。然后,您可以使用$0$1等来访问命令行参数。因此,将其写在您的package.json

"scripts": {
    "cr": "sh -c 'git commit -am $0 && git pull origin master --rebase && git push --force'",
}

现在您可以在终端中运行以下命令:

yarn cr commit_message