# @actions/glob 中文文档

规范地址：https://npmcn.com/package/%40actions/glob/

版本：0\.7\.0
npm 元数据更新时间：2026-06-11T21:11:10.865Z
中文译文更新时间：2026-11-05T16:59:59.356Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40actions/glob
原文对照：https://npmcn.com/package/%40actions/glob/?lang=original
项目主页：https://github.com/actions/toolkit/tree/main/packages/glob
源码仓库：https://github.com/actions/toolkit

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：80.7 kB，39 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：2 个
- 首次发布：2020-01-10T18:13:48.951Z
- 最新版本发布：2026-04-21T20:39:40.806Z
- 近 30 天下载量：2186546（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：12（近 12 个月 4 个）

## 中文简介

动作名副其实

## 安装

```sh
npm install @actions/glob
```

也可以使用：`pnpm add @actions/glob`、`yarn add @actions/glob`、`bun add @actions/glob`

## README

# `@actions/glob`

## 使用量

### 基础

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

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

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

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

### 从符号链接中选择

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

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

### 显示器

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

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

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

## 建议的行动投入

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

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

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

片断来自 `action.yml`数字 :

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

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

```js
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 是什么？

动作名副其实

### 如何安装 @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 和提交记录判断。

