Node.js npm任务中的路径通配符(windows与linux)
我对以下针对通配符路径运行autoprefixer的npm任务有问题:Node.js npm任务中的路径通配符(windows与linux),node.js,linux,jenkins,wildcard,postcss,Node.js,Linux,Jenkins,Wildcard,Postcss,我对以下针对通配符路径运行autoprefixer的npm任务有问题: "css:autoprefix": "postcss -u autoprefixer --autoprefixer.browsers \"Last 2 versions\" -r src/frontend/app/**/*.css" 该命令在windows上运行良好,但在我的linux(jenkins build server)上,css没有前缀。是否可能是linux不理解命令中的***.css linux是否可能不理解命
"css:autoprefix": "postcss -u autoprefixer --autoprefixer.browsers \"Last 2 versions\" -r src/frontend/app/**/*.css"
该命令在windows上运行良好,但在我的linux(jenkins build server)上,css没有前缀。是否可能是linux不理解命令中的***.css
linux是否可能不理解命令中的**/*.css
你完全正确
这应该有效:
"css:autoprefix": "postcss -u autoprefixer --autoprefixer.browsers \"Last 2 versions\" -r \"src/frontend/app/**/*.css\""
为什么这样做:
"css:autoprefix": "postcss -u autoprefixer --autoprefixer.browsers \"Last 2 versions\" -r \"src/frontend/app/**/*.css\""
Windows根本不支持globs,因此它直接将***.css
传递给postss,后者可以正确地扩展它
Linux支持globs,但许多发行版不支持globstar(**
)默认情况下,Linux shell尝试展开glob,但将**
解析为*
。这无法正确展开glob。通过将glob括在引号中,glob将始终直接传递给postss,后者可以正确展开glob
linux是否可能不理解命令中的**/*.css
你完全正确
这应该有效:
"css:autoprefix": "postcss -u autoprefixer --autoprefixer.browsers \"Last 2 versions\" -r \"src/frontend/app/**/*.css\""
为什么这样做:
"css:autoprefix": "postcss -u autoprefixer --autoprefixer.browsers \"Last 2 versions\" -r \"src/frontend/app/**/*.css\""
Windows根本不支持globs,因此它直接将***.css
传递给postss,后者可以正确地扩展它
Linux支持globs,但许多发行版不支持globstar(
**
)默认情况下,Linux shell尝试展开glob,但将**
解析为*
。这无法正确展开glob。通过将glob用引号括起来,glob将始终直接传递给postss,后者可以正确展开glob。可以标记为npm
,而npm脚本
。可以标记为npm>代码>和npm脚本
。