macOS
brew install bashatelocal Homebrew formula metadata
安装
brew install bashatelocal Homebrew formula metadata
nix profile install nixpkgs#bashatenixpkgs package indexes · pkgs/by-name/ba/bashate/package.nix · 来源: api.github.com
概览
Code style enforcement for bash programs
历史
bashate is OpenStack's style checker for Bash scripts. It is essentially a pycodestyle-style lint gate for shell code, built for projects where Bash scripts are part of the reviewed and tested codebase.
The official README calls bashate a pep8 equivalent for Bash scripts and says it attempts to fill the same automated code-review role for Bash that pep8 did in many OpenStack projects. It also states that bashate started in the DevStack project and would continue to evolve over time.
The OpenStack documentation and Opendev source identify it as an Apache-licensed OpenStack project with docs, source, bugs, release notes, and contribution pages. Its documented checks cover whitespace, indentation, line endings, line length, structure rules, `bash -n` syntax errors, and obsolete or unsafe syntax.
bashate's adoption is tied to OpenStack's large shell-script surface, especially DevStack and project automation. The batch input shows Homebrew and Nix packaging; in practice, the tool is most valuable to contributors and CI jobs enforcing OpenStack-adjacent shell style.
The release notes and official tag list show a 0.x line followed by 1.0.0 and 2.x releases, enough history to treat it as a maintained OpenStack utility rather than a one-off script.
Users run `bashate` against shell scripts to catch style and safety issues before review or CI. Its output intentionally follows the default pycodestyle output format, making it familiar in OpenStack's Python-heavy review culture.
The documented checks include trailing whitespace, hard tabs, non-multiple-of-four indents, missing final newline, missing shebang or `.sh` suffix, long lines, malformed control structures, heredoc termination, function declaration style, `bash -n` syntax errors, deprecated `$[` arithmetic, risky `local` declarations, and `[[` recommendations for comparisons.
bashate is package-nerd significant because it shows shell scripts becoming first-class reviewed artifacts in a large infrastructure project. It is not a general-purpose shell parser revolution; it is the small enforcement tool that makes a project's Bash style reproducible across laptops and CI workers.
It also captures an OpenStack packaging pattern: a narrow Python CLI published as a standalone package, documented by Sphinx, hosted in Opendev, and installed by package managers for repeatable developer workflows.
安全态势
narrow executable package without higher-risk signals.
绿色 风险 · 低 置信度 · appliance
在无人值守的代理使用前,请检查该工具是否读取明文凭据、写入远程状态、发布制品或调用插件。
可执行文件
| 命令 | 类型 | 暴露范围 | 备注 |
|---|---|---|---|
bashate | cli | 全局可执行文件 |
新鲜度
这些信号区分页生成时间、软件包管理器活动和上游发布比较。只有存在证据 URL 和可比较版本时,才会提示版本落后。
https://opendev.org/openstack/bashate
安装元数据
| 软件包键 | brew:bashate |
|---|---|
| 版本 | 2.1.1 |
| 软件包管理器 | Homebrew |
| 软件包管理器页面 | https://formulae.brew.sh/formula/bashate |
| 主页 | https://opendev.org/openstack/bashate |
| 仓库 | https://opendev.org/openstack/bashate |
| 上游文档 | https://docs.openstack.org/bashate/latest |
| 许可证 | Apache-2.0 |
| 源码归档 | https://files.pythonhosted.org/packages/4d/0c/35b92b742cc9da7788db16cfafda2f38505e19045ae1ee204ec238ece93f/bashate-2.1.1.tar.gz |
| 最后更新 | 2026-07-15T10:20:03Z |
| Pulse | updated |
| 依赖 | python@3.14 |
| Bottle | 可用 (于 all) |
| Homebrew post-install | 未定义 |
| 服务 | 未声明 |
注册表事实
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | bashate |
| Version Scheme | 0 |
| Revision | 3 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
源数据库匹配
匹配项来自外部软件包管理器索引,并与本地 Automic Vault 软件包链接分开显示。
bashate
nix profile install nixpkgs#bashate来源线索
此页面由 av-web 从 scripts/generate-pkg-sqlite.py 生成的私有软件包 SQLite 工件提供。
View the package source record on GitHub.