# 使用 Homebrew, MacPorts, Nix 安装 bashdb

查看 bashdb 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:bashdb
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install bashdb
```

  证据: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install bashdb
```

  证据: MacPorts ports tree: devel/bashdb/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#bashdb
```

  证据: nixpkgs package indexes: pkgs/by-name/ba/bashdb/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## 软件包事实

- **软件包键:** brew:bashdb
- **软件包管理器:** Homebrew
- **版本:** 5.2-1.2.0
- **来源摘要:** Bash shell debugger
- **主页:** <https://bashdb.sourceforge.net/>
- **已生成:** 2026-08-03T19:37:03+00:00

## 可执行文件

- bashdb (别名)

## 安装行为

- Bottle: 不可用

## 版本和新鲜度

- 页面生成时间: 2026-08-03
- 管理器版本: 5.2-1.2.0
## 项目历史与用法

BASH Debugger, usually packaged as bashdb, is a source-level debugger for Bash scripts. Its own README describes it as a debugger for Bash 5.2 and later, with older repository branches supporting older Bash releases, and says its command syntax follows the zsh debugger, the Trepan family of debuggers, and GNU gdb.

### 项目历史

The project grew out of earlier work to make Bash itself expose enough line, source-file, call-stack, and command information for a real debugger. The NEWS file describes an initial release of something worthy of being called a debugger after earlier ksh/bash debuggers lacked reliable line reporting through loops, conditionals, functions, and sourced files.

BashDB's release history tracks the Bash runtime closely: first public releases targeted Bash 2.x-era debugging support, version 3.00 was the first release for Bash 3.0 in 2004, the 4.0 series was a major rewrite for Bash 4.0 in 2008, and later branches followed Bash 4.1, 4.2, 4.3, 4.4, 5.0, 5.1, and 5.2.

### 采用历史

The THANKS file records distribution and platform work from packagers for Cygwin, SuSE RPMs, Debian, and NetBSD, as well as Emacs, JetBrains, and VS Code integration work. The README also links a Repology packaging badge, reflecting its long life as a small but widely packaged Unix developer tool.

BashDB has been useful where shell programs became large enough to need breakpoints, stepping, stack traces, and debugger command files, especially generated configure scripts and complex administrative shell code.

### 使用方式

The README documents three entry points: running a script under `bash --debugger`, invoking the `bashdb` executable directly, or sourcing debugger support from inside a running script and entering the debugger lazily. It also documents command-file and tty setup for debugging configure scripts whose stdin is closed.

The debugger exposes gdb-like commands for breakpoints, stepping, stack inspection, display/watch expressions, command history, aliases, tty control, source listing, and conditional breakpoints.

### 为什么软件包爱好者会关心

BashDB is package-nerd significant because it is one of the rare tools that treats shell scripts as debuggable programs rather than disposable glue. It also mirrors a classic packaging pattern: separate branches and release lines track interpreter ABI and behavior changes across Bash versions.

Its history is a reminder that debugger support often depends on cooperation from the language runtime. The project credits Chet Ramey and Bash changes that made call stacks, source lines, and command tracking practical.

### 时间线

- 2003: Early 0.x releases add gdb-like commands, DDD and Emacs support, call-stack handling, and Bash debugger patches.
- 2004: Version 3.00 0.01 is released as the first Bash 3.0 release.
- 2008: Version 4.0-0.1 is a major rewrite for Bash 4.0 and adds aliases, autoeval, shunit2 tests, and improved Emacs support.
- 2010: Version 4.1-0.4 changes the startup file from `.bashdbinit` to `$HOME/.bashdbrc` and requires Bash 4.1 or later.
- 2019: Version 5.0-0.1.1.0 revises the debugger for Bash 5.0.
- 2020s: The bash-5.2 branch documents Bash 5.2-and-newer support while older branches support older Bash releases.

### Related projects

- The README explicitly relates BashDB to zshdb, the Trepan debuggers, and GNU gdb. The THANKS file also names shunit2 for tests and points to Emacs dbgr work after older bundled Emacs Lisp was removed.

### 来源

- <https://bashdb.sourceforge.net/>
- <https://github.com/Trepan-Debuggers/bashdb/blob/bash-5.2/NEWS.md>
- <https://github.com/Trepan-Debuggers/bashdb/blob/bash-5.2/README.md>
- <https://github.com/Trepan-Debuggers/bashdb/blob/bash-5.2/THANKS.md>


## 安全说明

escape, surveillance, or offensive capability signal. generalized runtime or code generation signal.

- **Geiger 风险:** red / 中
- escape, surveillance, or offensive capability signal
- generalized runtime or code generation signal


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ~/.bashdbrc, <project>/.bashdbrc
## 其他软件包管理器记录

- Nix - bashdb: normalized package name match | nixpkgs package indexes: pkgs/by-name/ba/bashdb/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- MacPorts - bashdb: normalized package name match | MacPorts ports tree: devel/bashdb/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/bashdb.yml](https://github.com/mxcl/pkgdb/blob/main/combined/bashdb.yml)


## 来源

- pkg.so package database
- Geiger risk classifier
- curated configuration and credential file locations
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
