GitHub 热门项目: Bunster

2026-06-19 1 阅读 GitHub Trending
GitHub 项目:bunster 仓库地址:https://github.com/yassinebenaid/bunster 星级:2676 | 作者:亚辛贝奈德 项目描述:将 shell 脚本编译为静态二进制文件。 =================================================== 自述文件内容: # 邦斯特
[![CI](https://github.com/yassinebenaid/bunster/actions/workflows/ci.yml/badge.svg)](https://github.com/yassinebenaid/bunster/actions/workflows/ci.yml) [![阅读 - 文档](https://img.shields.io/badge/Read-documentation-9c2e5c)](https://bunster.netlify.app)
一个 shell 编译器,可将 shell 脚本转换为安全、可移植和静态的二进制文件。与其他工具(即 [shc](https://github.com/neurobin/shc))不同,Bunster 不仅仅将脚本包装在二进制文件中。它实际上将它们编译为独立于 shell 的程序。 在底层,**Bunster** 将 shell 脚本转换为 [Go](https://go.dev) 代码。然后它使用 [Go Toolchain](https://go.dev/dl) 将代码编译为可执行文件。 **Bunster** 的目标是与 `bash` 兼容作为起点。预计大多数“bash”脚本只能与 Bunster 一起使用。我们发布 v1 后将立即支持其他 shell。 > [!警告] > 该项目正处于开发的早期阶段。 [到目前为止仅支持一部分功能](https://bunster.netlify.app/features/simple-commands)。 ## 特点 除了兼容 bash 之外。 Bunster 提供了许多附加功能,增强了其独特性: - **静态二进制文件**:用bunster编译的脚本不仅仅是脚本的包装器,也不依赖于系统上的任何外部shell。 - **模块化**:与在单个文件中编写的传统 shell 脚本不同,bunster 提供了一个模块系统,允许您根据需要跨多个文件分发代码。 [了解更多](https://bunster.netlify.app/workspace/modules) - **包管理器**:bunster 有一个内置的包管理器,可以轻松地将模块作为库发布和使用。 [了解更多](https://bunster.netlify.app/workspace/modules) - **原生 `.env` 文件支持**:bunster 原生支持 `.env` 文件,允许您在运行时从 `.env` 文件加载变量。 [了解更多](https://bunster.netlify.app/features/environment-files) - **静态资产嵌入**:bunster 允许您在编译时将文件和目录嵌入到已编译的程序中。只需像运行时系统中的普通文件一样使用它们即可。 [了解更多](https://bunster.netlify.app/features/embedding) - **内置标志解析**:您不再需要手动解析标志。只需声明您期望的标志,然后让 Bunster 完成其余的工作。 [了解更多](https://bunster.netlify.app/features/functions#flags) - **静态分析**:bunster 静态分析您的脚本并在编译时报告潜在的错误。 (_擦拭_) ## 开始使用 [了解更多关于bunster的使用。](https://bunster.netlify.app) ## 安装 我们有一个 bash 脚本,可以安装 `bunster` 并将其添加到您的 `$PATH` 中。 ````外壳 卷曲-f https://bunster.netlify.app/instal
← 返回 开源推荐