如何将带有前导斜杠的参数传递给 npm 脚本
Posted
技术标签:
【中文标题】如何将带有前导斜杠的参数传递给 npm 脚本【英文标题】:How to pass an argument with a leading slash to npm script 【发布时间】:2020-10-19 23:15:43 【问题描述】:我有一个带有一些脚本的 package.json:
"scripts":
"build": "webpack-cli --mode production",
"build:dev": "webpack-cli --mode development",
我只想从命令行传递一个附加参数,而不是从package.json
中的脚本传递一个额外的参数,所以我运行这样的基本命令行:
npm run build:dev -- --test /toto/
我想要这个命令:
webpack-cli --mode development "--test" "/toto/"
但是,它运行这个命令:
webpack-cli --mode development "--test" "C:/Program Files/Git/toto/"
你知道我怎样才能避免在字符串“/toto”前面有绝对路径吗?
【问题讨论】:
/toto/
参数是项目目录中目录的路径名吗?你在使用 Git Bash 吗?
是的,我正在使用 git bash。我在下面找到了解决方法
是的,我怀疑它与 Git Bash 相关,我只能使用它来重现相同的行为。有MSYS_NO_PATHCONV
环境变量可以临时设置为1
以防止这种转换,但不幸的是它不适用于npm
【参考方案1】:
只需使用"'/toto/'"
编写命令
npm run build:dev -- --test "'/toto/'"
【讨论】:
以上是关于如何将带有前导斜杠的参数传递给 npm 脚本的主要内容,如果未能解决你的问题,请参考以下文章