Linux 效率工具使用技巧
重要
本文由 GPT-5.4 代写
命令行的效率提升,重点通常不是“背更多命令”,而是把重复操作压缩成几类固定动作:
- 找东西更快
- 看内容更快
- 改文件更快
- 进入目录更快
- 把常用操作做成别名或函数
下面这篇就只放我觉得平时最实用、最值得抄走的示例。
一、先把基础体验补齐
如果你的 shell 还是原始 Bash,很多事情不是不能做,而是会更慢。Bluefin 和 WSL Comfort 这类配置给人的启发其实很简单:先把日常交互层做好。
比较常见的组合是:
fish或zshstarship提示符eza替代lsbat替代catfd替代findripgrep的rg替代grepfzf做模糊搜索zoxide替代cdbtop或htop看资源
例如:
sudo apt install fish fzf zoxide btop
brew install starship eza bat fd ripgrep zoxide fzf btop不同发行版包名会略有区别,但思路基本一样。
二、文件查找:rg、fd、fzf 基本够用了
1. 用 rg 找文本
grep -R 不是不能用,但 rg 默认就会跳过 .git、node_modules 这类目录,速度和体验通常更好。
rg "TODO"
rg "useEffect" src
rg -n "snapd" .
rg -i "docker"
rg "category:" src/posts常用组合:
rg -n "关键词" .
rg -t md "Linux"
rg -t ts "fetch"
rg -g "*.md" "frontmatter"2. 用 fd 找文件
fd snap
fd -e md
fd README src
fd -e png assets
fd "dev" src/posts它比传统 find 更适合日常使用,语法也更短。
3. 用 fzf 交互式选文件
fd -e md | fzf
rg -l "Ubuntu" src | fzf
history | fzf一个很常见的编辑器工作流:
nvim "$(fd -e md src/posts | fzf)"
code "$(fd -e md src/posts | fzf)"三、看文件:别再硬啃原始 cat
1. bat
bat 会自动高亮、显示行号,对配置文件和代码特别友好。
bat ~/.bashrc
bat src/posts/Linux/dev.md
bat package.json配合分页:
bat src/posts/Linux/snap.md | less -R2. less
有些大文件还是得靠 less。
less /var/log/syslog
less +G build.log
journalctl -xe | less3. tail -f
看日志的时候非常常用:
tail -f app.log
tail -f /var/log/nginx/error.log
journalctl -fu ssh四、目录操作:zoxide 比 cd 更省脑子
cd 最大的问题不是难,而是你得记完整路径。
装了 zoxide 之后,先正常进出几次目录,后面就可以:
z blog
z vuepress
z downloads
zizi 会弹出交互选择,尤其适合目录很多的时候。
如果你经常在几个项目间来回跳,这个提升很明显。
五、目录浏览:eza 比 ls 更顺手
常用示例
eza
eza -la
eza --tree
eza --tree -L 2
eza -la --git
eza src/posts/Linux如果你还在用:
ls -lah那可以直接给自己加个别名:
alias ls='eza'
alias ll='eza -la'
alias lt='eza --tree -L 2'六、历史命令别浪费:配合 fzf 回捞
很多人其实不是不会命令,而是记不住“上次那条长命令”。
最直接的做法:
history | fzf如果是 Bash / Zsh,可以把它做成函数:
fh() {
eval "$(history | fzf | sed 's/^ *[0-9]\\+ *//')"
}这样你就可以:
fh然后直接重跑以前的命令。
七、把长命令缩成别名
效率提升最稳的一招,不是学新工具,而是把你每天敲三次以上的命令缩短。
例如:
alias g='git'
alias gs='git status -sb'
alias ga='git add'
alias gc='git commit'
alias gp='git push'
alias gl='git log --oneline --graph --decorate -20'
alias d='docker'
alias dc='docker compose'
alias k='kubectl'
alias v='nvim'再比如你经常构建博客:
alias blog='cd ~/vuepress-blog'
alias blogdev='cd ~/vuepress-blog && pnpm run docs:dev'
alias blogbuild='cd ~/vuepress-blog && pnpm run docs:build'如果你经常看系统信息:
alias ports='ss -tulpn'
alias myip='curl ifconfig.me'
alias mem='free -h'
alias disk='df -h'八、函数比别名更值钱
别名适合短命令,函数适合稍微复杂一点的流程。
1. 创建目录并进入
mkcd() {
mkdir -p "$1" && cd "$1"
}用法:
mkcd ~/tmp/test-project2. 解压常见压缩包
extract() {
case "$1" in
*.tar.bz2) tar xjf "$1" ;;
*.tar.gz) tar xzf "$1" ;;
*.bz2) bunzip2 "$1" ;;
*.rar) unrar x "$1" ;;
*.gz) gunzip "$1" ;;
*.tar) tar xf "$1" ;;
*.tbz2) tar xjf "$1" ;;
*.tgz) tar xzf "$1" ;;
*.zip) unzip "$1" ;;
*.7z) 7z x "$1" ;;
*) echo "cannot extract: $1" ;;
esac
}3. 快速备份配置
backup_file() {
cp "$1" "$1.$(date +%F-%H%M%S).bak"
}backup_file ~/.bashrc
backup_file ~/.config/fish/config.fish九、Git 的效率重点不在 GUI,而在固定套路
1. 看状态
git status -sb
git diff
git diff --staged2. 看历史
git log --oneline --graph --decorate -20
git blame src/posts/Linux/dev.md3. 快速查是谁改了某个词
git log -S "Ubuntu Snap" -- src/posts/Linux/snap.md
git log -p -S "Giscus"4. 配合 fzf 选分支
git branch --all | fzf如果你平时在多个分支之间来回切,值很高。
十、日志和进程排查尽量标准化
1. 看端口占用
ss -tulpn
ss -tulpn | rg 30002. 看进程
ps aux | rg node
ps aux | rg python或者直接:
btop
htop3. 看 systemd 服务
systemctl status nginx
journalctl -u nginx -n 100
journalctl -fu docker十一、容器和开发环境
Bluefin 那边很强调容器化开发环境,这点我很认同。原因很简单:把环境问题和业务问题分开。
平时最常用的 Docker / Podman 命令,其实不需要很多。
docker ps
docker ps -a
docker images
docker logs -f container_name
docker exec -it container_name bash
docker compose up -d
docker compose logs -f
docker compose down如果你用 Podman,很多命令几乎一模一样:
podman ps
podman images
podman exec -it container_name bash
podman-compose up -d十二、包管理器别只会装软件
apt
apt search neovim
apt show ripgrep
apt list --installed | rg git
sudo apt install fd-find ripgrep batdnf
dnf search podman
dnf info fish
sudo dnf install eza bat fd-find ripgrepbrew
brew search starship
brew info zoxide
brew list
brew install eza bat fd ripgrep fzf zoxide十三、写博客或写文档时最实用的一组命令
如果你像我一样平时会维护 Markdown 内容,这组命令会很高频。
1. 查 frontmatter
rg "^title:" src/posts
rg "^tags:" src/posts
rg "^category:" src/posts2. 批量找文章
fd -e md src/posts
fd snap src/posts
fd dev src/posts/Linux3. 查某个术语写过几次
rg -n "Ubuntu" src/posts
rg -n "Snap" src/posts
rg -n "Giscus" src4. 快速预览当前文章
bat src/posts/Linux/dev.md十四、一个我自己比较推荐的最小组合
如果不想一下子装太多,先从这几个开始就够了:
rgfdfzfzoxidebatezabtopstarship
这几样已经能覆盖大部分“找文件、看文件、跳目录、查历史、看资源”的痛点。
十五、最后的建议:先复制,再沉淀
CLI 效率提升最忌讳两件事:
- 一上来装一百个工具,结果一个都没形成习惯
- 看了很多 dotfiles 仓库,但自己的命令还是没变短
更实用的方式是:
- 先抄 3 到 5 个你今天就能用上的命令
- 用一周
- 把你重复三次以上的命令写成 alias 或 function
- 再慢慢整理自己的 shell 配置
这样最后留下来的,才真的是你自己的工作流,而不是别人的配置展览馆。