Repolode
google

google/zx

基于 JavaScript 编写 Shell 风格脚本的工具,封装 child_process 并自动转义参数,兼容多平台。

Star
45,813
Fork
1,320
未关闭 Issue
22
最近提交
9天前

这是什么?

zx 让你用 JavaScript 编写脚本,同时以简洁的语法执行 Shell 命令。其 `$` 模板标签可执行命令、自动转义插值参数并返回输出,管道、并行执行和文件操作等常见 Bash 任务都可以用普通代码完成。

该包封装了 Node.js 的 child_process,提供跨平台辅助函数和合理的默认配置,省去了直接启动进程时的大量样板代码。它支持 Linux、macOS 和 Windows,可运行于 Node.js、Bun、Deno 和 GraalVM Node.js,底层 Shell 可选 Bash 或 PowerShell。

支持 CommonJS 与 ESM 模块,也兼容 JavaScript 和 TypeScript 项目。另提供更轻量的 zx@lite 版本。

核心功能

  • 01通过 `$` 模板标签执行 Shell 命令,并自动转义参数。
  • 02提供对 Node.js child_process 的跨平台封装。
  • 03底层支持 Bash 和 PowerShell。
  • 04可在 Node.js、Bun、Deno 和 GraalVM Node.js 上运行。
  • 05同时支持 CommonJS 与 ESM,兼容 JavaScript 和 TypeScript。

适用场景

  • 编写调用 git、docker 等命令行工具的部署或构建脚本。
  • 在一个 Node.js 脚本中并行执行多条 Shell 命令。
  • 用可维护的 JavaScript 或 TypeScript 代码替代复杂的 Bash 脚本。

快速上手

  1. 1

    使用 npm 安装 zx

    npm install zx
  2. 2

    按文档用 zx API 编写脚本并运行

使用前须知

  • README 中的安装和使用细节仅见于外部文档,入门需要阅读链接的文档。

标签

常见问题

zx 是什么?
基于 JavaScript 编写 Shell 风格脚本的工具,封装 child_process 并自动转义参数,兼容多平台。 zx 让你用 JavaScript 编写脚本,同时以简洁的语法执行 Shell 命令。其 `$` 模板标签可执行命令、自动转义插值参数并返回输出,管道、并行执行和文件操作等常见 Bash 任务都可以用普通代码完成。
zx 可以免费使用吗?用的什么许可证?
zx 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
zx 还在维护吗?
活跃维护中。zx 最近一次提交是在 2026年10月12日。
zx 适合用来做什么?
编写调用 git、docker 等命令行工具的部署或构建脚本。 在一个 Node.js 脚本中并行执行多条 Shell 命令。 用可维护的 JavaScript 或 TypeScript 代码替代复杂的 Bash 脚本。
zx 怎么安装和运行?
使用 npm 安装 zx: npm install zx 按文档用 zx API 编写脚本并运行
在哪里获取 zx?
源代码和安装说明在 GitHub 上:https://github.com/google/zx

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目