WSL工具
APT 基础
shell
sudo apt update && sudo apt install -y \
build-essential curl wget git unzip zip ca-certificates gnupg lsb-releaseHomebrew
- 按提示把 brew 的 shellenv 加到 ~/.bashrc 或 ~/.zshrc
shell
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"终端 & Shell 体验
zoxide:更聪明的 cd
- 替代 cd,会记住你常去的目录,z xxx 秒跳转
shell
sudo apt install -y zoxide
echo 'eval "$(zoxide init bash)"' >> ~/.bashrc # zsh 就改成 zsh
source ~/.bashrc
z <关键词> # 例如 z projfzf:模糊搜索选择器
- 模糊搜索文件/历史命令/进程,配合 git、ripgrep 很爽
shell
sudo apt install -y fzf
# 常用:
ctrl+r # 模糊搜历史命令starship:跨 shell 的漂亮且快的提示符
- Git 分支、语言版本、目录信息,一目了然
shell
brew install starship
echo 'eval "$(starship init bash)"' >> ~/.bashrc
source ~/.bashrc文件查找 / 搜索 / 浏览
ripgrep (rg):超快全文搜索
- 替代
grep -R,速度快、忽略规则懂 .gitignore
shell
sudo apt install -y ripgrep
rg "关键字" .
rg "TODO" -n srcfd:更好用的 find
- 替代
find,语法更直观
shell
sudo apt install -y fd-find
# Ubuntu 下命令叫 fdfind,可加个 alias
echo "alias fd=fdfind" >> ~/.bashrc && source ~/.bashrc
fd package.jsoneza:更现代的 ls(带 git 信息)
- 替代
ls,显示图标/权限/时间/git 状态更友好
shell
brew install eza
eza -lah --gitbat:带语法高亮的 cat
- 替代
cat,看配置/代码文件非常舒服
shell
sudo apt install -y bat
# Ubuntu 可能叫 batcat
echo "alias bat=batcat" >> ~/.bashrc && source ~/.bashrc
bat ~/.bashrcyazi:终端文件管理器(高效预览)
- 类似
ranger,但更现代,预览图片/文本/压缩包很强
shell
brew install yazi ffmpegthumbnailer unar
yazishell
sudo snap install yazi --classic
sudo apt install -y ffmpegthumbnailer unar
yazi .JSON 查看神器 (Rust)
shell
brew install jless- 用法:
jless data.json或curl xxx | jless
Git 相关
delta:更好看的 git diff
- diff 高亮、行内对比、可读性提升巨大
shell
brew install git-delta
git config --global core.pager delta
git config --global interactive.diffFilter "delta --color-only"
git config --global delta.navigate truelazygit
- 在终端里用界面操作 git:stage/commit/rebase/log 一把梭
shell
brew install lazygit
lazygit- 在你的任意 Git 项目目录下输入
lazygit即可启动- 界面布局 界面分为左右两栏,左侧有 5 个面板(按
Tab或h/l左右切换,j/k上下移动):Status: 项目状态Files: 变动的文件 (暂存区/工作区)Local Branches: 本地分支Commits: 提交记录Stash: 贮藏区
- 核心快捷键:
- 暂存文件 (git add):
- 在 Files 面板,选中文件按
Space(空格) 切换暂存/取消暂存 - 按
a暂存所有文件
- 在 Files 面板,选中文件按
- 提交代码 (git commit):
- 按
c弹出提交框,输入消息后回车
- 按
- 推送代码 (git push):
- 在任意面板按
P(大写,即Shift+p) 推送 - 按
p(小写) 拉取 (Pull)
- 在任意面板按
- 放弃修改:
- 在 Files 面板选中文件,按
d放弃该文件的修改(慎用!)
- 在 Files 面板选中文件,按
- 分支操作:
- 移动到 Local Branches 面板,选中分支按
Space检出 (Checkout) - 按
n新建分支
- 移动到 Local Branches 面板,选中分支按
- 暂存文件 (git add):
- 界面布局 界面分为左右两栏,左侧有 5 个面板(按
如果你写错了 Commit Message,直接去 Commits 面板找到那条记录,按
R(Rename) 直接修改,Lazygit 会自动帮你处理rebase的复杂逻辑
Docker
Lazydocker
shell
brew install lazydocker- 在命令行输入
lazydocker启动。它能让你完全摆脱docker ps和docker logs- 界面布局 同样是分栏结构:
Services: 如果你在 Docker Compose 目录下,这里显示服务列表。Containers: 所有正在运行或停止的容器。Logs: (右侧大屏) 实时日志。
- 核心操作
- 查看日志:
- 左侧选中容器,右侧自动显示日志。点击右侧区域(或按
Enter)进入日志视图,可以像看文件一样上下滚动。
- 左侧选中容器,右侧自动显示日志。点击右侧区域(或按
- 重启/停止/删除:
- 选中容器,按
r重启 (Restart)。 - 按
s停止 (Stop)。 - 按
d删除 (Remove)。
- 选中容器,按
- 进入容器 (exec):
- 选中容器,按
E(大写),会自动进入该容器的 Shell 环境 (/bin/sh 或 /bin/bash)。
- 选中容器,按
- 清理垃圾:
- 按
b可以批量清理已停止的容器和无用的镜像 (Prune)。
- 按
- 查看资源占用:
- 面板顶部会实时显示 CPU 和 内存占用率。
- 查看日志:
- 界面布局 同样是分栏结构:
JSON/YAML/日志处理
jq:JSON 处理之王
- 过滤、格式化、抽字段、组装 JSON
shell
sudo apt install -y jq
cat data.json | jq '.items[] | {id, name}'
curl -s https://api.github.com | jq '.current_user_url'yq:YAML 处理(K8s/CI 配置常用)
- 像 jq 一样操作 YAML
shell
brew install yq
yq '.services.web.port' docker-compose.ymllnav:日志浏览器(带过滤/高亮)
- 看大日志文件、按字段过滤、跳转错误更快
shell
sudo apt install -y lnav
lnav /var/log/syslog网络/调试
httpie:更顺手的 curl
- HTTP 调试更人类可读(请求/响应格式化)
shell
sudo apt install -y httpie
http GET https://example.com
http POST http://localhost:3000/api name=foo age:=18doggo:更好用的 dig(DNS)
- DNS 查询可读性强,排查解析问题
shell
brew install doggo
doggo example.commtr:ping + traceroute 合体
- 网络抖动/丢包排查
shell
sudo apt install -y mtr
mtr 8.8.8.8性能/进程/磁盘
btop
- CPU/RAM/磁盘/网络/进程
shell
sudo apt install -y btop
btopduf:磁盘占用(替代 df)
- 磁盘空间展示更清晰
shell
brew install duf
dufdust:目录占用(替代 du)
- 看哪个目录最占空间
shell
brew install dust
dust -d 2 .任务/并发/构建辅助
just 任务脚本
- 统一
dev/build/test/deploy命令
shell
brew install just
cat > justfile <<'EOF'
dev:
pnpm dev
build:
pnpm build
EOF
just deventr:文件变化自动执行命令
- 监听文件改动后自动跑测试/格式化/重启服务
shell
sudo apt install -y entr
ls *.go | entr -c go test ./...watchexec:更强的文件监听执行器
- 跨平台、规则更丰富,替代 entr
shell
brew install watchexec
watchexec -r -e ts,tsx "pnpm test"跨 Windows/WSL 的桥接工具
wslu:WSL 专属小工具包
wslview用默认 Windows 浏览器打开链接、路径互转等
shell
sudo apt install -y wslu
wslview https://github.com
wslpath -w /home/you/project # 转 Windows 路径win32yank:让 WSL 里的复制能进 Windows 剪贴板
- 配合 neovim/tmux 复制粘贴丝滑
- 常见做法:装到 /usr/local/bin,并在编辑器里配置调用
shell
brew install win32yank
# 测试:把内容送进 Windows 剪贴板
printf "hello" | win32yank.exe -i编辑器
Micro 编辑器
shell
brew install micromicro的操作逻辑非常接近 Windows 记事本:- 退出: 按 Ctrl + Q
- 保存: 按 Ctrl + S
- 注意: 如果你修改了文件没保存就按 Ctrl + Q,屏幕下方会提示你是否保存:
- 按 y 保存并退出。
- 按 n 不保存直接退出。
- 按 Esc 取消退出。
语言/环境管理
fnm — Node 版本管理
shell
brew install fnm- 查看可安装的所有版本 (远程):
fnm list-remote
- 查看已安装的版本 (本地):
fnm list
- 安装特定版本:
shell
fnm install 20 # 安装 Node.js 20 的最新版
fnm install --lts # 安装最新的长期支持版 (LTS)
fnm install latest # 安装最新尝鲜版- 切换/使用版本:
fnm use 20
- 设置默认版本 (每次打开终端自动用的版本):
fnm default 20
nvm — Node 版本管理
shell
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
source ~/.bashrc
nvm install --ltsGo / gopls / 工具
shell
sudo apt install -y golang
go install golang.org/x/tools/gopls@latestpipx(装 Python CLI 工具更干净)
shell
sudo apt install -y pipx
pipx ensurepath