终端效率翻倍:5款让命令行焕然一新的现代替代工具

如果你天天跟终端打交道,肯定对 cat、gr…

如果你天天跟终端打交道,肯定对 catgrepfindls 这些老牌命令不陌生。但说句实话——2026 年了,这些工具在交互体验上真的有点跟不上节奏了。

好在开源社区早就替咱们准备好了接班人。今天聊的这 5 款工具,完全可以替换掉你每天用的那些老家伙,而且安装简单、零依赖冲突,装完就能感觉到明显不同。

1. bat —— cat 的现代替代品

batcat 的升级版,最直观的区别就是:带语法高亮和行号。它默认支持超过 160 种编程语言的着色,还自动整合了 Git 变更标记(增删的行会用颜色标出来)。

安装:

# macOS
brew install bat

# Ubuntu/Debian
sudo apt install bat
# 注意:Ubuntu 下命令名可能是 batcat,做个别名就好
echo 'alias bat=batcat' >> ~/.bashrc

# 直接下载二进制
curl -LO https://github.com/sharkdp/bat/releases/latest/download/bat-musl_0.25.0_amd64.deb
sudo dpkg -i bat-musl_0.25.0_amd64.deb

最常用的场景:bat server.py 直接看代码,行号、高亮、Git 标注一气呵成。搭配 -A 参数还能显示所有不可见字符,查空格/tab 混用的问题特别方便。

2. fd —— 比 find 快 10 倍的搜索利器

find 命令的参数语法出了名的反人类。 fd 用直觉化的方式重写了文件搜索:默认递归、默认忽略 .gitignore 里的文件、支持正则和通配符,速度还快了一个量级。

# 安装
brew install fd         # macOS
sudo apt install fd-find # Debian/Ubuntu

# 用法对比
find . -name "*.py" -type f      # 老方式
fd "\.py$"                       # 新方式,快多了

# 搜索某个关键词开头的文件
fd "config*" /etc                # 支持指定目录

# 搜索包含特定字符串的文件(搭配 -x 执行命令)
fd "\.log$" -x wc -l {}         # 统计所有 .log 文件的行数

fd 还有个隐藏优势:它默认遵循 .gitignore,所以在 Git 项目里搜东西不会把 node_modules 翻出来,这点非常实用。

3. ripgrep (rg) —— 史上最快的文本搜索

grep 够用,但面对大项目或海量日志时太慢了。ripgrep(命令名 rg)用 Rust 重写了整个搜索流程,默认递归、默认也遵循 .gitignore、输出还能自动着色。

# 安装
brew install ripgrep
sudo apt install ripgrep

# 在项目里搜索关键词
rg "function main" src/

# 搜索但不包含注释和字符串
rg -n "TODO\|FIXME" --type-add 'code:*.{py,js,rs,go}' -t code

# 搭配 bat 输出上下文(终极组合)
rg -n "error" log.txt | head -20

fd 一样,rg 不会搜 .gitignore 里的目录。两个工具配合起来,搜索体验直接起飞。

4. eza —— ls 的现代替代品

ezals 的升级版,也是曾经的 exa 的继任者(exa 已经停更了,现在都转 eza)。支持彩色输出、图标显示、树形视图、按 Git 状态着色,功能比 ls 强太多了。

# 安装
brew install eza
sudo apt install eza   # 较新版本 Ubuntu 已收录

# 推荐别名(写到 .bashrc 或 .zshrc 里)
alias ll='eza -l --icons'
alias la='eza -la --icons'
alias lt='eza -l --icons --tree'

# 按大小排序,只看前 10
eza -l --icons -s size | head -10

# 显示 Git 状态
eza -l --icons --git

图标功能需要终端支持 Nerd Font,如果没装字体,去掉 --icons 参数即可,彩色输出本身就已经秒杀 ls 了。

5. fzf —— 模糊搜索,万用快捷键

fzf 不是某个命令的替代品,而是一个通用模糊搜索工具,可以跟任何命令组合使用。它的核心能力是:接收管道输入 → 模糊搜索 → 输出选中的结果。

# 安装
brew install fzf
sudo apt install fzf

# 安装完运行配置脚本(启用 Ctrl+R、Ctrl+T 等快捷键)
$(brew --prefix)/opt/fzf/install   # macOS
/usr/share/doc/fzf/examples/install # Debian

# 结合 fd 搜索文件并在 vim 中打开
vim "$(fd -t f | fzf)"

# 预览文件内容
fd -t f | fzf --preview 'bat --style=numbers --color=always {}'

# 历史命令搜索(Ctrl+R 增强版)
# 安装后默认 Ctrl+R 就被 fzf 接管了,模糊匹配历史命令,比以前一行一行翻快太多

fzf 的杀手锏是 Ctrl+T 把当前目录的文件列表变成模糊搜索框,结合 --preview 直接预览内容,选文件/目录的效率拉满。

装完后的一站式配置

把这些工具加到 ~/.bashrc~/.zshrc 里,一次配置,长期受益:

# 现代 CLI 工具集配置
alias cat='bat'
alias ls='eza --icons'
alias ll='eza -l --icons'
alias la='eza -la --icons'
alias lt='eza -l --icons --tree'
alias grep='rg'
alias find='fd'

# fzf 集成
[ -f ~/.fzf.bash ] && source ~/.fzf.bash

这几款工具全部用 Rust 编写(除 fzf 是 Go),单二进制部署、零运行时依赖、跨平台一致体验。花十分钟装好,以后每天节省的时间积累下来,绝对值回票价。

你有在用什么提升终端效率的工具?欢迎在评论区分享你的私藏好物。

类似文章

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注