bun run CLI 用法
bash
bun run <file or script>常规执行选项
--silentboolean 不打印脚本命令
--if-presentboolean 如果入口点不存在则无错误退出
--evalstring 将参数作为脚本执行。别名:
-e--printstring 将参数作为脚本执行并打印结果。别名:
-p--helpboolean 显示此菜单并退出。别名:
-h工作空间管理
--elide-linesnumber default: 10 使用 --filter 时显示的脚本输出行数(默认:10)。设置为 0 显示所有行
--filterstring 在匹配模式的所有工作空间包中运行脚本。别名:
-F--workspacesboolean 在所有工作空间包中运行脚本(来自
package.json 的 workspaces 字段) 运行时与进程控制
--bunboolean 强制脚本或包使用 Bun 运行时而不是 Node.js(通过符号链接 node)。别名:
-b--shellstring 控制
package.json 脚本使用的 shell。支持 bun 或 system--smolboolean 使用较少内存,但更频繁地运行垃圾回收
--expose-gcboolean 在全局对象上暴露
gc()。对 Bun.gc() 无影响 --no-deprecationboolean 抑制所有自定义弃用报告
--throw-deprecationboolean 确定弃用警告是否会导致错误
--titlestring 设置进程标题
--zero-fill-buffersboolean 强制
Buffer.allocUnsafe(size) 为零填充的布尔值 --no-addonsboolean 如果调用
process.dlopen 则抛出错误,并禁用导出条件 node-addons--unhandled-rejectionsstringstrict、throw、warn、none 或 warn-with-error-code 之一 --console-depthnumber default: 2 设置
console.log 对象检查的默认深度(默认:2) 开发工作流
--watchboolean 文件更改时自动重启进程
--hotboolean 在 Bun 运行时、测试运行器或打包器中启用自动重载
--no-clear-screenboolean 启用 --hot 或 --watch 时禁用重载时清除终端屏幕
调试
--inspectstring 激活 Bun 的调试器
--inspect-waitstring 激活 Bun 的调试器,执行前等待连接
--inspect-brkstring 激活 Bun 的调试器,在第一行代码设置断点并等待
依赖与模块解析
--preloadstring 在其他模块加载之前导入模块。别名:
-r--requirestring --preload 的别名,用于 Node.js 兼容性
--importstring --preload 的别名,用于 Node.js 兼容性
--no-installboolean 禁用 Bun 运行时中的自动安装
--installstring default: auto 配置自动安装行为。可选值:
auto(默认,没有 node_modules 时自动安装)、fallback(仅缺失的包)、force(始终) -iboolean 执行期间自动安装依赖。等同于 --install=fallback
--prefer-offlineboolean 跳过 Bun 运行时中包的陈旧检查并从磁盘解析
--prefer-latestboolean 在 Bun 运行时中使用最新匹配版本的包,始终检查 npm
--conditionsstring 传递自定义条件进行解析
--main-fieldsstring 在
package.json 中查找的主要字段。默认取决于 --target --preserve-symlinksboolean 解析文件时保留符号链接
--preserve-symlinks-mainboolean 解析主入口点时保留符号链接
--extension-orderstring default: .tsx,.ts,.jsx,.js,.json 默认值:
.tsx,.ts,.jsx,.js,.json转译与语言功能
--tsconfig-overridestring 指定自定义
tsconfig.json。默认 $cwd/tsconfig.json--definestring 解析时替换 K:V,例如
--define process.env.NODE_ENV:"development"。值被解析为 JSON。别名:-d--dropstring 移除函数调用,例如
--drop=console 移除所有 console.* 调用 --loaderstring 使用
.ext:loader 解析文件,例如 --loader .js:jsx。有效加载器:js、jsx、ts、tsx、json、toml、text、file、wasm、napi。别名:-l--no-macrosboolean 禁用打包器、转译器和运行时中宏的执行
--jsx-factorystring 更改使用经典 JSX 运行时编译 JSX 元素时调用的函数
--jsx-fragmentstring 更改编译 JSX 片段时调用的函数
--jsx-import-sourcestring default: react 声明用于导入 jsx 和 jsxs 工厂函数的模块说明符。默认:
react--jsx-runtimestring default: automaticautomatic(默认)或 classic--jsx-side-effectsboolean 将 JSX 元素视为具有副作用(禁用 pure 注释)
--ignore-dce-annotationsboolean 忽略树摇优化注释,如
@__PURE__网络与安全
--portnumber 设置
Bun.serve 的默认端口 --fetch-preconnectstring 代码加载时预连接到 URL
--max-http-header-sizenumber default: 16384 设置 HTTP 请求头的最大大小(字节)。默认为 16KiB
--dns-result-orderstring default: verbatim 设置 DNS 查找结果的默认顺序。有效顺序:
verbatim(默认)、ipv4first、ipv6first--use-system-caboolean 使用系统的可信证书颁发机构
--use-openssl-caboolean 使用 OpenSSL 的默认 CA 存储
--use-bundled-caboolean 使用捆绑的 CA 存储
--redis-preconnectboolean 启动时预连接到
$REDIS_URL--sql-preconnectboolean 启动时预连接到 PostgreSQL
--user-agentstring 设置 HTTP 请求的默认 User-Agent 头
全局配置与上下文
--env-filestring 从指定文件加载环境变量
--cwdstring 解析文件和入口点的绝对路径。这只更改进程的 cwd
--configstring 指定 Bun 配置文件路径。默认
$cwd/bunfig.toml。别名:-c示例
运行 JavaScript 或 TypeScript 文件:
bash
bun run ./index.js
bun run ./index.tsx运行 package.json 脚本:
bash
bun run dev
bun run lint