@actions/glob

中文文档
0.7.0发布于 2026/04/22MITTypeScriptES Module构建来源已验证近 30 天下载 218.7万

动作名副其实

中文使用文档
文档目录11 节
  1. 使用量
  2. 基础
  3. 从符号链接中选择
  4. 显示器
  5. 建议的行动投入
  6. 模式
  7. Glob 行为
  8. 提尔德扩展
  9. 评论
  10. 排除图案
  11. 逃跑

@actions/glob

使用量

基础

您可以使用此软件包搜索匹配 glob 模式的文件 .

相对路径和绝对路径都是允许的. 相对路径根植于当前工作目录.

const glob = require('@actions/glob');

const patterns = ['**/tar.gz', '**/tar.bz']
const globber = await glob.create(patterns.join('\n'))
const files = await globber.glob()
const glob = require('@actions/glob');

const globber = await glob.create('**', {followSymbolicLinks: false})
const files = await globber.glob()

显示器

在处理大量结果时,考虑在返回时延长结果:

const glob = require('@actions/glob');

const globber = await glob.create('**')
for await (const file of globber.globGenerator()) {
  console.log(file)
}

Glob默认跟随符号链接. 除非删除文件,以下内容往往适当.

由于其他原因,用户可能希望选择退出跟随符号链接. 譬如说, 过多的符号链接可以创建非常,非常多文件的外观 并放慢搜索速度.

当一个动作允许用户指定输入模式时,一般建议 允许用户选择退出遵循符号链接.

片断来自 action.yml数字 :

inputs:
  files:
    description: 'Files to print'
    required: true
  follow-symbolic-links:
    description: 'Indicates whether to follow symbolic links'
    default: true

以及相应的工具包消费量:

const core = require('@actions/core')
const glob = require('@actions/glob')

const globOptions = {
  followSymbolicLinks: core.getInput('follow-symbolic-links').toUpper() !== 'FALSE'
}
const globber = glob.create(core.getInput('files'), globOptions)
for await (const file of globber.globGenerator()) {
  console.log(file)
}

模式

Glob 行为

模式 *, (中文(简体) ), ?, (中文(简体) ), [...], (中文(简体) ), ** (globstar) 被支持.

具有以下行为: 1

  • 开始的文件名 . 可列入结果
  • Windows 上的大小写不敏感
  • 目录分隔符 / 财务报告和审定财务报表 \ 两者都支持在 Windows 上

提尔德扩展

支持基本的平面扩展, 只用于当前用户 Home 替换 .

示例

  • ~ 可能扩展为/用户/johndoe
  • ~/foo 可能扩展为/用户/johndoe/foo

评论

开始的模式 # 将作为评论处理.

排除图案

领导 ! 改变包含模式的含义以排除.

多个线索 ! 翻出意义.

逃跑

环绕特殊字符 [] 可用于从字面上擦去字符 在文件名中。 例如文字文件名称 hello[a-z] 可以逃脱为 hello[[]a-z]。 。 。 .

在 Linux/ macOS 上 \ 也被视为逃跑的角色.

版本与发布记录

@actions/glob 共发布 12 个版本,首次发布于 2020/01/11;过去 12 个月发布了 4 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.7.0latest2026/04/226 个月前
0.6.12026/01/309 个月前
0.6.02026/01/309 个月前
0.5.12026/01/289 个月前
0.5.02024/08/162 年前
0.4.02023/01/253 年前

关于 @actions/glob 的常见问题

@actions/glob 是什么?

动作名副其实

如何安装 @actions/glob?

在项目目录运行 npm install @actions/glob,或使用 pnpm add / yarn add / bun add。

@actions/glob 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@actions/glob 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@actions/glob 可以商用吗?

@actions/glob 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@actions/glob 的下载量有多少?

根据 npm 官方下载统计,@actions/glob 在 2026/10/05 – 2026/11/03 这 30 天内被下载 2,186,546 次,日均约 72,885 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@actions/glob 还在维护吗?

最新版本 0.7.0 发布于 2026/04/22(6 个月前);至今共发布 12 个版本,其中过去 12 个月发布了 4 个;首次发布于 2020/01/11。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。