下面我会先完成你要的 “tmux + fzf 工作流” 全套教程,内容是可直接使用、可复制、能极大提升效率的。
接着,我会将我们聊天中所有的命令行技巧内容(管道、重定向、fzf 安装与技巧等)整理成一个适合博客直接发布的完整文章,结构清晰、美观、可读性强。
第一部分
🌟 Tmux + Fzf 工作流(最强终端效率组合)
这是当今开发者使用频率最高的终端组合之一 快速切 pane、切窗口、切 session、搜索文件、搜索命令、搜索 git、搜索历史 —— 只用 一个快捷键:Ctrl + R / Ctrl + T / fzf
🎯 为什么需要 tmux + fzf?
- tmux = 多窗口、多分屏、会话保持
- fzf = 全局模糊搜索(命令、文件、路径、历史、pane、session)
- 两者组合 = 终极终端工作流
你可以:
- 模糊搜索所有 tmux session 并快速切换
- 模糊搜索 pane 并跳转
- 模糊搜索最近访问的目录并在 tmux pane 中跳转
- 模糊搜索文件并打开(配合 vim/nvim)
- 一条命令模糊搜索最近执行的 tmux 命令
🚀 安装 tmux(如果你还没有)
mac:
brew install tmuxUbuntu:
sudo apt install tmux🚀 在 tmux 里启用 fzf(推荐方式)
通过 tmux-fzf 插件实现:
① 安装 tpm(tmux plugin manager)
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm在你的 ~/.tmux.conf 末尾加入:
# TPM 插件管理器
run '~/.tmux/plugins/tpm/tpm'② 安装 tmux-fzf 插件
在 ~/.tmux.conf 添加:
set -g @plugin 'junegunn/tmux-fzf'加载插件:
进入 tmux,按:
Ctrl + B 然后按 I
就会安装插件。
🎮 tmux + fzf 的强大快捷键(来自 tmux-fzf)
安装完成后你就能获得这套神器般的快捷键:
🔥 1. 搜索并切换 tmux session
prefix + Ctrl + s
展示所有 session:
session1
session2
server-debug
client-api
…
模糊输入任意字符快速跳转。
🔥 2. 搜索并切换 tmux window
prefix + Ctrl + w
比如你输入:
back
就能跳到名为 backend 的窗口。
🔥 3. 搜索并跳转 tmux pane(强烈推荐)
prefix + Ctrl + p
效果:
session:window.pane /path/to/project (命令)
你可以模糊搜索:
- 文件路径
- 命令
- 窗口标题
快速跳转 pane。
🔥 4. 搜索所有 tmux buffer(历史复制记录)
prefix + Ctrl + b
结合 fzf → 超强复制管理
🌟 自定义你自己的 tmux + fzf 工作流(更强)
下面是 我给你定制的一套高效率 tmux-fzf 绑定
可以直接复制粘贴到你的 .tmux.conf:
# 使用 fzf 切换 session
bind-key S run "tmux list-sessions | fzf | cut -d: -f1 | xargs tmux switch-client -t"
# 使用 fzf 切换 window
bind-key W run "tmux list-windows -a | fzf | cut -d: -f1 | xargs tmux select-window -t"
# 使用 fzf 切 pane
bind-key P run 'tmux list-panes -a -F "#{session_name}:#{window_index}.#{pane_index} #{pane_current_command} #{pane_current_path}" | fzf | cut -d" " -f1 | xargs tmux select-pane -t'
# 在当前 pane 内快速查找文件并用 nvim 打开
bind-key F command-prompt -p "Search file:" \
"split-window -v \"fd {} | fzf --preview 'bat --color=always {}' | xargs nvim\""🌟 最强工作流(推荐每天使用)
以下是超级好用的组合操作:
① 模糊选择 session → 直接跳转
Prefix + Ctrl + S
② 模糊选择 pane → 直接跳转
Prefix + Ctrl + P
③ 模糊搜索文件 → nvim 打开
Prefix + F
④ 使用 fzf 搜索历史命令
Ctrl + R
⑤ 在 tmux pane 内模糊查找文件
Ctrl + T
⑥ 模糊搜索目录(Alt + C)→ tmux pane 直接 cd
🎉 恭喜,你已经拥有最强终端开发工作流!
如果你想,我还可以继续教:
✔ fzf-tab(fzf 接管 tab 补全)
✔ zoxide(智能 cd,比 fzf+Alt+C 更强)
✔ tmux + fzf + zoxide 组合技
✔ 完整最优 .zshrc 配置
第二部分
📚 完整博客文章:fzf + Linux 命令行技巧 — 从安装到魔法级使用指南
可直接复制到你的博客 人人能学会 内容结构清晰 包含你所有需要的技巧合集
🚀 标题示例(可自由改)
《超强终端效率指南:fzf 安装、命令行重定向、管道技巧与高级搜索工作流》
🧭 目录结构(博客版)
- 什么是 fzf?为什么它能让你的终端开挂?
- fzf 的安装(macOS / Linux)
- fzf 与 shell 的集成(Ctrl+R、Ctrl+T、Alt+C)
- Linux 管道与重定向的全解析
- fzf 的常用技巧(文件搜索、命令历史、路径跳转等)
- fzf + ripgrep / fd / git 的高级组合
- tmux + fzf 的终极工作流(可选)
- 推荐终端增强工具(fzf-tab、zoxide、bat)
- 完整配置示例(可直接复制)
📝 正文内容(博客可直接贴)
🌟 1. fzf 是什么?
fzf 是一个跨平台的 模糊搜索器(fuzzy finder),几乎可以搜一切:
- 搜索历史命令(Ctrl + R)
- 搜索文件(Ctrl + T)
- 搜索目录(Alt + C)
- 搜索 Git 分支、tag、提交记录
- 搜索 tmux session / window / pane
- 搜索系统进程
它速度极快,UI 美观,使用自然,是现代终端必装神器。
🌟 2. fzf 安装方式
macOS(Homebrew)
brew install fzf
$(brew --prefix)/opt/fzf/install第二步会问:
Enable fuzzy history search (Ctrl + R)?
Enable file completion?
全部按 y!
Ubuntu
sudo apt install fzf启用 shell keybindings:
/usr/share/fzf/install🌟 3. fzf 集成 Shell(最关键)
安装脚本会自动配置以下快捷键:
| 快捷键 | 功能 |
|---|---|
| Ctrl + R | 模糊搜索历史命令 |
| Ctrl + T | 搜索文件并插入路径 |
| Alt + C | 搜索目录并 cd |
🌟 4. Linux 管道与重定向(核心知识)
输入重定向 <
把文件作为命令输入:
python main.py < input.txt输出重定向 >
把命令输出写到文件:
ls > out.txt追加输出 >>
echo hello >> log.txt管道 |
把命令输出 → 作为另一个命令输入:
ls | grep py | wc -l区别总结:
- 重定向:命令 ↔ 文件
- 管道:命令 ↔ 命令
🌟 5. fzf 的高频技巧(超实用)
① 搜索历史命令(Ctrl + R)
模糊搜索:
git ch
py ser
甚至多关键词:
git rebase prod
② 搜索文件(Ctrl + T)
在光标处插入路径:
vim <Ctrl + T>③ 搜索目录(Alt + C)
模糊跳到任意目录:
Alt + C → doc → Enter
④ 直接使用 fzf 搜索任意列表
ls | fzf搜索进程并 kill:
ps aux | fzf | awk '{print $2}' | xargs kill🌟 6. fzf + ripgrep + fd(更强的搜索三件套)
安装 fd 与 ripgrep:
brew install fd ripgrep项目内搜索文件:
fd | fzf项目内搜索内容并打开 Vim:
rg -n '' | fzf | cut -d: -f1 | xargs nvim🌟 7. fzf + git 搜索工作流
搜索所有 commit:
git log --oneline | fzf搜索被修改的文件:
git diff --name-only | fzf | xargs git diff搜索分支:
git branch | fzf🌟 8. tmux + fzf(可选最终强化)
见第一部分: 最强工作流:session / pane / window 全模糊选择。
🌟 9. 推荐终端增强工具
| 工具 | 作用 |
|---|---|
| fzf-tab | 让 tab 补全变成 fzf 模糊搜索 |
| zoxide | 超强 cd,配合 fzf 更强 |
| bat | 高亮 cat |
| fd | find 的替代品 |
| ripgrep (rg) | grep 的增强版 |
🎁 10. 完整 fzf 配置(可贴进 .zshrc)
export FZF_DEFAULT_OPTS="--height 60% --layout=reverse --border --preview 'bat --color=always {}' --preview-window=right:60%"
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh🎉 总结
通过 fzf + 命令行重定向 + 管道 + tmux + git,你的终端将:
- 更快
- 更智能
- 更易导航
- 不再需要鼠标
- 生产力直接翻倍
如果你需要的话,我可以:
✔ 提供一份 完整的 .zshrc + .tmux.conf 最佳模板
✔ 提供一份图解版终端工作流速查表(cheat sheet)
✔ 根据你的开发语言(Python / C++ / Go)定制终端工作流
你需要哪一个?