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

Glob(npm包)无法匹配点开头文件,模式或glob.sync()参数需调整?

问题:Glob模式无法匹配隐藏文件

我的Glob模式:

D:/WebDevelopmentProjects/InitiativeClientsProject/Example/HomePage/01-Source/Automation/ToCopy/Production/**/* 

无法匹配全路径为D:\WebDevelopmentProjects\InitiativeClientsProject\Example\HomePage\01-Source\Automation\ToCopy\Production\.env.production.generated的隐藏文件.env.production.generated。

当前使用的glob.sync()代码仅添加了nodir: true参数:

import Glob from "glob";

Glob.sync(
  [ "D:/WebDevelopmentProjects/InitiativeClientsProject/Example/HomePage/01-Source/Automation/ToCopy/Production/**/*" ], 
  { nodir: true }
);

执行结果包含该目录下所有非隐藏文件,但唯独缺少.env.production.generated:

[
  'D:\\WebDevelopmentProjects\\InitiativeClientsProject\\Example\\HomePage\\01-Source\\Automation\\ToCopy\\Production\\package.json',
  'D:\\WebDevelopmentProjects\\InitiativeClientsProject\\Example\\HomePage\\01-Source\\Automation\\ToCopy\\Production\\FrontServer.Dockerfile',
  'D:\\WebDevelopmentProjects\\InitiativeClientsProject\\Example\\HomePage\\01-Source\\Automation\\ToCopy\\Production\\docker-compose.yml',
  'D:\\WebDevelopmentProjects\\InitiativeClientsProject\\Example\\HomePage\\01-Source\\Automation\\ToCopy\\Production\\ssl\\SSL_Key-Production.pem',
  'D:\\WebDevelopmentProjects\\InitiativeClientsProject\\Example\\HomePage\\01-Source\\Automation\\ToCopy\\Production\\ssl\\SSL_Certificate-Production.pem'
]
解决方案

问题出在glob的默认行为:默认忽略以.开头的隐藏文件。你需要在选项中添加dot: true参数,让glob匹配隐藏文件。

修改后的代码:

import Glob from "glob";

Glob.sync(
  [ "D:/WebDevelopmentProjects/InitiativeClientsProject/Example/HomePage/01-Source/Automation/ToCopy/Production/**/*" ], 
  { 
    nodir: true,
    dot: true  // 添加该参数以匹配隐藏文件
  }
);

添加dot: true后,glob就会包含所有以.开头的文件,你的.env.production.generated就能被正常匹配到。

内容的提问来源于stack exchange,提问作者Takeshi Tokugawa YD

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 05:45:03