快速查看当前机器上可用的 CLI 工具,并尽量告诉你它们是由哪个软件安装的。
lscli 默认展示用户自己安装的、较顶层的 CLI。系统自带命令、包内部依赖命令、Homebrew 包的次级命令默认会隐藏;需要完整列表时可以加 -a。
cargo install --path .如果你是从 GitHub 拉取源码:
git clone https://github.com/adslrfsw/list-cli.git
cd list-cli
cargo install --path .lscli默认会打开交互式界面:
COMMAND INSTALLED_BY PATH
> ⭐️ rg homebrew:ripgrep /opt/homebrew/bin/rg
ffmpeg homebrew:ffmpeg /opt/homebrew/bin/ffmpeg
常用按键:
↑/↓ 移动光标
f 收藏/取消收藏当前命令,收藏项会用 ⭐️ 置顶
h 隐藏当前命令
i 查看已隐藏命令
← 在隐藏列表中返回主列表
/ 搜索
esc 清空搜索
q 退出
ctrl-c 退出
在隐藏列表中,按 h 会把选中的命令恢复显示。
lscli --plain # 输出普通表格,适合复制或脚本读取
lscli --json # 输出 JSON
lscli rg # 只查看指定命令
lscli -a # 显示系统命令、依赖命令和包内次级命令
lscli refresh # 重建安装来源缓存
lscli hide aviocat # 隐藏命令
lscli hidden # 列出已隐藏命令
lscli unhide aviocat # 恢复隐藏命令
lscli --no-cache # 本次扫描不使用缓存普通表格会把 PATH 放在最右侧:
COMMAND INSTALLED_BY PATH
rg homebrew:ripgrep /opt/homebrew/bin/rg
foo unknown /Users/loco/bin/foo
默认模式会隐藏:
- 系统自带命令
node_modules、Cellar、libexec等路径里的依赖或内部命令- Homebrew 包里的次级命令,例如
homebrew:ffmpeg里的aviocat - 你手动隐藏过的命令
-a / --all 会显示系统命令、依赖命令和次级命令,但仍然不会显示你手动隐藏过的命令。
收藏命令会保存在本地配置里,并在列表顶部显示。隐藏命令也会保存在本地配置里,直到你在隐藏列表里恢复它。
正常列出命令时,lscli 不会反复调用慢速包管理器查询。安装来源来自本地扫描和缓存。
当你安装或卸载了很多工具,或者发现 INSTALLED_BY 不准确时,运行:
lscli refresh