使用 keepassxc-cli 和 fzf 管理 KeePass 数据库的交互式终端界面。

keepassxc-cli - KeePassXC 命令行客户端fzf - 命令行模糊查找器bash - Unix shellxclip(X11)wl-copy(Wayland)pbcopy(macOS)# Install to /usr/local/bin (requires sudo)
curl -fsSL https://raw.githubusercontent.com/creusvictor/keepassxc-fzf/main/install.sh | sudo bash
# Or install to ~/.local/bin (no sudo required)
curl -fsSL https://raw.githubusercontent.com/creusvictor/keepassxc-fzf/main/install.sh | PREFIX=~/.local bash
# Debian/Ubuntu
sudo apt install keepassxc fzf xclip
# Arch Linux
sudo pacman -S keepassxc fzf xclip
# Fedora
sudo dnf install keepassxc fzf xclip
# macOS
brew install keepassxc fzf
git clone https://github.com/creusvictor/keepassxc-fzf.git
cd keepassxc-fzf
# Install to /usr/local/bin (requires sudo)
sudo make install
# Or install to ~/.local/bin
make install PREFIX=~/.local
sudo make uninstall
# Or: make uninstall PREFIX=~/.local
keepassxc-fzf [OPTIONS] [database.kdbx]
Options:
-h, --help Show help
-k, --keyfile FILE Use keyfile
Environment variables:
KPDB Path to KeePass database
KPKF Path to keyfile
Precedence (highest to lowest):
1. CLI arguments (-k, database path)
2. Environment variables (KPDB, KPKF)
Note: KPKF is only inherited from the environment when the database also
comes from KPDB. If you pass a database path on the CLI, env credentials
are ignored to avoid mixing credentials from different databases.
The master password is always entered interactively and is never read
from the environment.
# Basic usage
keepassxc-fzf ~/passwords.kdbx
# With keyfile
keepassxc-fzf -k ~/key.key ~/passwords.kdbx
# Using environment variables
export KPDB="$HOME/passwords.kdbx"
export KPKF="$HOME/key.key"
keepassxc-fzf
标准的 fzf 导航也有效(Ctrl+J/Ctrl+K、箭头键、输入搜索)。
***** 屏蔽密码chmod 600 临时文件传递给 fzf 子进程,而不是通过环境变量,因此不在 /proc/<pid>/environ 中可见trap 删除keepassxc-cli 未找到:安装 KeePassXC(sudo apt install keepassxc)
fzf 未找到:安装 fzf(sudo apt install fzf)
剪贴板不工作:安装 xclip(sudo apt install xclip)或用于 Wayland 的 wl-clipboard
数据库无法打开:验证密码、文件路径以及密钥文件路径(如果使用)
MIT
| 快捷键 | 操作 |
|---|
Ctrl+P | 复制密码(10秒后清除) |
Ctrl+U | 复制用户名(30秒后清除) |
Ctrl+L | 复制URL(30秒后清除) |
Ctrl+N | 复制备注(30秒后清除) |
Alt+S | 在屏幕上显示密码 |
Enter | 复制密码并退出 |
ESC | 退出 |