如何在PowerShell中向npm脚本传递含空格的参数?
解决npm脚本传递含空格文件名的PowerShell转义问题
当在PowerShell中执行npm start "A B.txt"时,参数被错误转义为^A^ B.txt^,这是因为npm在Windows环境下的参数解析逻辑和PowerShell的引号处理机制冲突导致的。以下是几种可行的解决方法:
使用单引号包裹文件名
直接用单引号替代双引号,PowerShell不会转义单引号内的内容,npm能正确识别带空格的文件名:npm start 'A B.txt'双重转义双引号
如果必须使用双引号,用PowerShell的反引号(`)对双引号进行二次转义,确保npm收到正确的参数:npm start `"A B.txt`"用
--分隔参数
在npm命令后添加--,明确区分npm自身的参数和要传递给目标脚本的参数,这种方法能避免多数参数转义问题:npm start -- "A B.txt"
内容的提问来源于stack exchange,提问作者ethan1999
相关产品推荐
相关产品推荐

