You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js中如何获取包含单个反斜杠的目录路径字符串

Node.js CLI获取Windows路径参数的问题解决

问题原因

Windows命令行里,反斜杠\是转义字符。你直接输入node myapp.js D:\test\strange时,shell会把\t、\s这类带反斜杠的组合当成特殊转义序列解析,导致实际传入Node.js的参数丢失了反斜杠,变成D:teststrange。

解决方法

  • 用双引号包裹路径(最推荐):
    执行命令时把路径用双引号括起来,shell就会把整个路径当作普通字符串处理,不会解析内部的反斜杠:

    node myapp.js "D:\test\strange"
    

    这时process.argv[2]就能正确拿到D:\test\strange。

  • 用双反斜杠转义:
    输入路径时把每个反斜杠改成双反斜杠,让shell解析后保留单个反斜杠:

    node myapp.js D:\\test\\strange
    
  • 代码内兼容处理(可选):
    如果要兼容用户可能的不规范输入,可以在代码里尝试补全路径分隔符,但这种方法存在边界风险(比如路径里本来就有连续字母的情况)。示例代码:

    const pathArg = process.argv[2];
    // 针对Windows路径,尝试补回可能被转义的反斜杠(仅示例,需按需调整)
    const fixedPath = pathArg.replace(/([a-zA-Z])([a-zA-Z])/g, '$1\\$2');
    console.log(fixedPath);
    

    不过还是优先让用户通过前两种方法输入更靠谱。

内容的提问来源于stack exchange,提问作者Asif Mahmud

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 01:05:22