Linux & macOS 命令行效率工具集:从环境搭建到代理配置
概述
对于 Linux 和 macOS 用户而言,命令行是提升开发与运维效率的核心载体。但原生环境往往缺乏 “便捷提示”“高效编辑”“网络代理” 等关键能力,需要通过第三方工具补足。
本文整理的工具集并非 “绝对最优解”,而是经过实际场景验证的 “实用组合”—— 从基础环境依赖安装,到 Zsh 终端美化与自动补全,再到 Neovim 编辑器配置、V2Ray 网络代理与 Proxychains 命令行代理,覆盖 “日常开发 - 环境配置 - 网络需求” 全场景。每一步均提供 Linux(Ubuntu/CentOS)与 macOS 双平台命令,新手可按步骤复刻,老手可按需挑选模块优化现有环境。
一、基础环境:先装这些 “必备依赖”
无论后续安装何种工具,系统基础依赖与常用软件都是前提。先将系统更新到最新版本,再安装 Git、终端复用、网络工具等基础组件,避免后续因依赖缺失报错。
1. Ubuntu 系统(Debian 系)
# 1. 更新系统包索引并升级已安装软件
sudo apt update && sudo apt upgrade -y
# 2. 安装核心依赖:Git(版本控制)、Zsh(终端)、Curl(网络请求)、Tmux(终端复用)等
sudo apt install -y git zsh curl tmux openssh-server net-tools xclip
xclip:实现 “命令行内容复制到系统剪贴板”(如 cat file.txt | xclip -sel clip);
net-tools:包含 ifconfig 等网络查询工具,部分老脚本依赖。
2. CentOS 系统(RHEL 系)
# 1. 更新系统(CentOS 7 用 yum,CentOS 8+ 建议用 dnf,命令类似)
sudo yum update -y
# 2. 安装核心依赖(注意:CentOS 默认无 wget,需手动安装)
sudo yum install git zsh wget tmux net-tools xclip
3. macOS 系统(需先安装 Homebrew)
macOS 推荐用 Homebrew(包管理器)安装软件,若未安装 Homebrew,先执行以下命令:
# 安装 Homebrew(国内用户可加镜像加速,默认命令如下)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
安装完成后,批量安装基础软件与开发工具:
# 1. 更新 Homebrew 包索引
brew update
# 2. 安装 GUI 软件(浏览器、办公、开发工具等)
brew install --cask google-chrome qq slack wechat iterm2 # iTerm2 是更强大的终端替代原生 Terminal
# 3. 安装命令行工具(文件搜索、模糊查找、编程语言等)
brew install fd node fzf python reattach-to-user-namespace git-flow-avh ripgrep ruby go tmux lua unrar httpie wget neovim
# 4. 安装字体与扩展工具(Fira Code 是程序员常用等宽字体,支持连字)
brew tap homebrew/cask-fonts
brew install --cask baidunetdisk dash docker mpv elmedia-player postman font-fira-code visual-studio-code dotnet-sdk
# 5. 安装 Quick Look 插件(预览 Markdown/JSON/代码等文件)
brew install --cask qlmarkdown qlstephen qlvideo quicklook-json quicklookase qlcolorcode qlimagesize betterzip suspicious-package provisionql quicklookapk quicklook-pat
二、终端升级:Zsh + Oh-My-Zsh 打造高效命令行
Linux/macOS 默认终端是 Bash,虽功能够用,但缺乏 “语法高亮”“命令自动提示”“插件扩展” 能力。Zsh 是 Bash 的超集,而 Oh-My-Zsh 则是 Zsh 的 “配置管家”,一键解决 Zsh 配置复杂的问题,让终端既好用又好看。
1. 安装 Oh-My-Zsh
# 通过 curl 下载并执行安装脚本(国内用户若慢,可替换为 GitHub 镜像)
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
# 安装完成后,终端会自动切换为 Zsh;若未切换,手动执行:
chsh -s $(which zsh)
- 执行 chsh -s $(which zsh) 后,需重启终端生效;
- 若提示 “权限不足”,Ubuntu/CentOS 可加 sudo,macOS 直接执行即可。
2. 安装核心插件(自动提示 + 语法高亮)
Oh-My-Zsh 插件生态丰富,以下两个是 “必装级”,能大幅提升输入效率:
# 1. zsh-autosuggestions:命令自动提示(输入部分命令,自动联想历史命令)
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
# 2. zsh-syntax-highlighting:语法高亮(正确命令绿色,错误命令红色,直观区分)
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
3. 配置 Zsh(修改~/.zshrc)
~/.zshrc 是 Zsh 的核心配置文件,需手动编辑启用插件与调整样式:
# 1. 打开配置文件(用 nano 或 vim 均可,这里用 nano 更简单)
nano ~/.zshrc
# 2. 找到 plugins=() 行,替换为以下内容(启用插件列表)
plugins=(
branch # 显示当前 Git 分支
colored-man-pages # 给 man 命令输出加颜色
common-aliases # 常用命令别名(如 ll=ls -l)
copybuffer # 复制命令行缓冲区到剪贴板
copydir # 复制当前目录路径到剪贴板
copyfile # 复制文件内容到剪贴板
cp # cp 命令增强(如自动确认、进度条)
dash docker docker-compose docker-machine # Docker 相关插件
encode64 # Base64 编码解码
extract # 一键解压所有压缩格式(如 extract file.tar.gz)
fancy-ctrl-z # Ctrl+Z 暂停进程后,再按 Ctrl+Z 恢复
fd # fd 命令补全(替代 find 的高效文件搜索工具)
frontend-search # 前端相关搜索(如 searchnpm 搜索 npm 包)
gem git git-flow-avh gitignore # Git 相关插件
history history-substring-search # 历史命令搜索(Ctrl+R 或上下键)
helm httpie jsontools # Kubernetes/HTTP 请求/JSON 处理
kubectl kube-ps1 minikube # Kubernetes 相关插件
nmap npm nvm # Nmap 端口扫描/NPM/Node 版本管理
perms pip ripgrep rsync # 权限管理/Pip/Ripgrep(高效文本搜索)
systemadmin transfer # 系统管理/文件传输(如 transfer 上传文件到临时链接)
urltools web-search zsh_reload # URL 处理/网页搜索(如 google 关键词)/快速重载 Zsh 配置
zsh-autosuggestions zsh-completions zsh-syntax-highlighting # 前面安装的核心插件
)
# 3. 配置自动提示颜色(默认灰色可能看不清,改为亮绿色 fg=10)
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=10'
# 4. 保存并退出 nano:按 Ctrl+O → 回车确认 → Ctrl+X
# 5. 重载 Zsh 配置,让修改生效
source ~/.zshrc
效果预览:
- 输入 git 后,自动提示历史 Git 命令(如 git commit -m "fix bug");
- 输入错误命令(如 gti)会显示红色,正确命令(如 git)显示绿色;
- 常用命令有别名(如 ll 等价于 ls -l,la 等价于 ls -la)。
三、编辑器升级:Neovim 替代 Vim,更现代的终端编辑器
Vim 是 Linux/macOS 内置的经典编辑器,但代码结构老旧,扩展能力有限。Neovim(简称 NvChad)是 Vim 的 “现代重构版”,兼容 Vim 语法,同时支持异步插件、Lua 配置、更好的 GUI 支持,是程序员的终端编辑器首选。
1. 安装 Neovim(分平台)
Ubuntu 系统:
# 添加 Neovim 官方 PPA(稳定版)
sudo add-apt-repository ppa:neovim-ppa/stable
sudo apt update
sudo apt install -y neovim
CentOS 系统:
# CentOS 需先安装 EPEL 源(Extra Packages for Enterprise Linux)
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum install -y neovim python3-neovim
macOS 系统:
# 直接用 Homebrew 安装(前面基础环境已包含,若未装则执行)
brew install neovim
2. 安装插件管理器:vim-plug
Neovim 插件需通过管理器安装,vim-plug 是轻量且高效的选择:
# 下载 vim-plug 到 Neovim 插件目录(自动创建目录)
curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
3. 复用 Vim 配置(若有旧 .vimrc)
若之前使用 Vim 并配置过 ~/.vimrc,可直接链接到 Neovim 的配置文件 init.vim,无需重复编写:
# 1. 创建 Neovim 配置目录(若不存在)
mkdir -p ~/.config/nvim
# 2. 建立软链接(将 .vimrc 链接为 init.vim)
ln -s ~/.vimrc ~/.config/nvim/init.vim
4. 安装插件与检查健康状态
# 1. 进入 Neovim
nvim
# 2. 在 Neovim 中执行插件安装(vim-plug 命令,需在 Normal 模式下输入)
:PlugInstall
# 执行后会自动下载配置文件中声明的插件,等待进度条完成后关闭窗口
# 3. 检查 Neovim 健康状态(查看是否缺少依赖,如 Python/Node 支持)
:checkhealth
5. 补全语言支持(解决 checkhealth 警告)
checkhealth 若提示 “缺少 Python/Node/Ruby 支持”,需为这些语言安装 Neovim 插件,确保编辑器能正常使用代码补全、语法检查等功能:
安装 Ruby 支持:
# Ubuntu/CentOS
sudo apt install -y ruby ruby-dev # Ubuntu
# sudo yum install -y ruby ruby-devel # CentOS
sudo gem install neovim
# macOS(Homebrew 已装 Ruby,直接安装插件)
gem install neovim
安装 Python 支持:
# Ubuntu/CentOS
sudo apt install -y python3 python3-pip # Ubuntu
# sudo yum install -y python3 python3-pip # CentOS
pip3 install --upgrade pip # 升级 pip
pip3 install pynvim
# macOS
pip3 install --upgrade pip
pip3 install pynvim
安装 Node 支持:
# Ubuntu(添加 NodeSource 源,安装 Node 12.x 稳定版)
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
sudo apt install -y nodejs
# CentOS
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
sudo yum install -y nodejs
# macOS(Homebrew 已装 Node,直接安装插件)
# 若未装 Node:brew install node
# 配置 npm 国内镜像(淘宝源,加速安装)
npm config set registry https://registry.npm.taobao.org
# 安装 Neovim Node 插件
sudo npm install -g neovim
安装完成后,重新进入 Neovim 执行 :checkhealth,所有警告应已消除。
四、网络代理:V2Ray 搭建全局代理
V2Ray 是一款功能强大的网络代理工具,支持多种协议(如 SOCKS5、VMess),兼容性优于传统 Shadowsocks,可实现 Linux/macOS 全局网络代理,解决 “访问国外资源慢” 的问题。
1. 下载并安装 V2Ray
# 1. 下载官方安装脚本
curl -O https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh
chmod u+x install-release.sh # 给脚本执行权限
# 2. 下载 V2Ray 二进制包(以 Linux 64 位为例,macOS 需替换为对应包)
# 查看最新版本:https://github.com/v2fly/v2ray-core/releases
curl -O https://github.com/v2fly/v2ray-core/releases/download/v4.33.0/v2ray-linux-64.zip
# 3. 执行安装(指定本地包路径,避免脚本自动下载)
sudo ./install-release.sh -l v2ray-linux-64.zip
# 4. 设置 V2Ray 开机自启并启动服务
sudo systemctl enable v2ray # 开机自启
sudo systemctl start v2ray # 立即启动
- macOS 安装:需下载 v2ray-macos-64.zip,安装步骤相同,但启动方式为 sudo launchctl load /Library/LaunchDaemons/com.v2ray.v2ray.plist;
- 若安装脚本下载慢,可手动从 V2Ray Releases 下载对应平台包,再执行安装。
2. 配置 V2Ray(关键步骤)
V2Ray 配置文件为 config.json,需根据自己的代理服务器信息修改(服务器需提前搭建好 V2Ray/Shadowsocks 服务):
# 编辑配置文件(用 Neovim 或 vim 打开)
sudo nvim /usr/local/etc/v2ray/config.json
将以下配置替换为自己的服务器信息(关键字段已标注):
```json
{
"inbounds": [
{
"port": 1080, // 本地监听端口(后续 Proxychains 会用到)
"protocol": "socks", // 入口协议:SOCKS5(常用)
"sniffing": {
"enabled": true,
"destOverride": ["http", "tls"] // 嗅探 HTTP/TLS 流量,优化转发
},
"settings": {
"auth": "noauth" // 不认证(本地使用,无需密码)
}
}
],
"outbounds": [
{
"protocol": "shadowsocks", // 出口协议(若服务器是 V2Ray,改为 "vmess")
"settings": {
"servers": [
{
"address": "serveraddr.com", // 你的代理服务器 IP/域名
"method": "aes-128-gcm", // 加密方式(需与服务器一致)
"ota": true, // 开启 OTA 校验(增强安全性)
"password": "sspasswd", // 代理密码(需与服务器一致)
"port": 1024 // 服务器端口(需与服务器一致)
}
]
}
}
]
}
3. 重启 V2Ray 生效配置
# 重启服务,让新配置生效
sudo systemctl restart v2ray
# 检查服务状态,确认是否正常运行
sudo systemctl status v2ray
# 若显示 "active (running)",说明启动成功
五、命令行代理:Proxychains 让 wget/curl 走代理
V2Ray 虽能实现全局代理,但命令行工具(如 wget、curl、git)默认可能不走代理,导致 “下载国外资源慢” 或 “无法访问”。Proxychains(Linux 下常用 proxychains-ng,即 “下一代” 版本)是一款轻量的 “命令行代理转发工具”—— 无需修改系统配置,只需在命令前加 proxychains,即可让该命令通过指定代理运行,尤其适合临时下载国外包(如 GitHub 源码、Python 国外库)。
1. 安装 Proxychains(分平台)
Ubuntu 系统(直接通过 apt 安装)
Ubuntu 官方源包含 proxychains 包,直接安装即可:
sudo apt install -y proxychains
CentOS 系统(需源码编译安装)
CentOS 官方源无 proxychains,需从 GitHub 下载源码编译:
# 1. 安装编译依赖(gcc 编译器、make 工具)
sudo yum install -y gcc make git
# 2. 克隆 proxychains-ng 源码
git clone https://github.com/rofl0r/proxychains-ng.git
cd proxychains-ng
# 3. 编译并安装(默认安装到 /usr/local/)
./configure # 配置编译选项
make # 编译源码
sudo make install # 安装到系统目录
# 4. 复制默认配置文件到 /etc/(系统级配置,所有用户可用)
sudo cp src/proxychains.conf /etc/proxychains.conf
macOS 系统(通过 Homebrew 安装)
macOS 推荐用 Homebrew 安装 proxychains-ng(避免源码编译的麻烦):
brew install proxychains-ng
安装后,配置文件路径为 /usr/local/etc/proxychains.conf(Intel 芯片)或 /opt/homebrew/etc/proxychains.conf(M1/M2 芯片),可通过 brew info proxychains-ng 查看具体路径。
2. 配置 Proxychains:关联 V2Ray 代理
Proxychains 的核心是配置 “代理服务器地址”,需与前面 V2Ray 的本地监听端口(默认 1080,SOCKS5 协议)对应,确保流量能转发到 V2Ray。
步骤 1:编辑配置文件
# Ubuntu/CentOS:编辑系统级配置文件
sudo nvim /etc/proxychains.conf
# macOS(Intel 芯片):
sudo nvim /usr/local/etc/proxychains.conf
# macOS(M1/M2 芯片):
sudo nvim /opt/homebrew/etc/proxychains.conf
步骤 2:修改配置(关键操作)
配置文件默认包含很多注释,找到 “[ProxyList]” 部分,删除原有代理配置,添加 V2Ray 的本地 SOCKS5 代理:
# 找到 [ProxyList] 段落,添加以下内容(前面的代理配置可注释或删除)
[ProxyList]
# 格式:协议类型 代理IP 代理端口
socks5 127.0.0.1 1080
- 协议类型:必须与 V2Ray 入口协议一致(这里是 socks5);
- 代理 IP:127.0.0.1 表示 “本地代理”(V2Ray 运行在本机);
- 代理端口:与 V2Ray 配置中 inbounds.port 一致(默认 1080)。
步骤 3:可选优化(关闭 “DNS 泄露”)
默认配置下,Proxychains 可能用本地 DNS 解析域名,导致 “DNS 泄露”(暴露真实访问的域名)。可在配置文件中添加以下内容,让 DNS 请求也走代理:
# 在配置文件顶部添加(可选,增强隐私性)
proxy_dns
3. 测试与使用 Proxychains
配置完成后,直接在需要走代理的命令前加 proxychains 即可,无需重启服务。
基础用法示例
# 1. 测试代理是否生效(访问 Google,若返回 HTML 则成功)
proxychains curl https://www.google.com
# 2. 用 wget 下载 GitHub 上的资源(避免国内访问慢)
proxychains wget https://github.com/v2fly/v2ray-core/releases/download/v4.33.0/v2ray-linux-64.zip
# 3. 用 git 克隆国外仓库(如 proxychains 源码)
proxychains git clone https://github.com/rofl0r/proxychains-ng.git
进阶:设置别名(简化输入)
每次输入 proxychains 较麻烦,可在 Zsh/Bash 配置中添加别名(如用 pc 代替):
# 编辑 Zsh 配置文件(Bash 用户编辑 ~/.bashrc)
nvim ~/.zshrc
# 添加别名(一行即可)
alias pc="proxychains"
# 重载配置生效
source ~/.zshrc
# 之后可用别名使用,更简洁
pc curl https://www.google.com
pc git clone https://github.com/xxx/xxx.git
4. 常见问题:解决 “libproxychains.so.3 找不到” 报错
部分系统(如 Ubuntu 20.04、CentOS 7)执行 proxychains 时可能报错:
ERROR: ld.so: object 'libproxychains.so.3' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
原因是系统找不到 libproxychains.so.3 共享库文件,需手动指定路径。
解决步骤:
- 查找共享库路径:
# 全局搜索 libproxychains.so.3 文件
sudo find /usr/ -name libproxychains.so.3
常见结果(不同系统路径可能不同):
- Ubuntu:/usr/lib/x86_64-linux-gnu/libproxychains.so.3
- CentOS:/usr/local/lib/libproxychains.so.3
- macOS:/usr/local/lib/libproxychains4.dylib(注意:macOS 是 libproxychains4.dylib)
- 修改 proxychains 启动脚本:
# Ubuntu/CentOS:编辑 proxychains 启动脚本
sudo nvim /usr/bin/proxychains
# 在脚本开头添加一行,指定 LD_PRELOAD 路径(替换为上一步找到的路径)
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libproxychains.so.3
# macOS 用户:编辑 /usr/local/bin/proxychains4,添加
export DYLD_INSERT_LIBRARIES=/usr/local/lib/libproxychains4.dylib
- 保存后测试:
proxychains curl https://www.google.com
若不再报错且能正常返回内容,说明问题已解决。
六、总结:工具集使用场景与优先级
本文整理的工具覆盖 “终端环境 - 编辑工具 - 网络代理” 三大核心场景,实际使用中可按以下优先级配置:
优先级 | 工具 / 模块 | 核心价值 | 适用场景 |
---|---|---|---|
1(基础) | 系统依赖 + Zsh + Oh-My-Zsh | 搭建高效命令行环境,解决 “输入慢、无提示” 问题 | 所有开发 / 运维场景,每天都用 |
2(编辑) | Neovim + vim-plug + 语言支持 | 替代 Vim/VS Code,终端内实现高效代码编辑 | 写脚本、改配置文件、轻量开发 |
3(网络) | V2Ray + Proxychains | 解决 “国外资源访问慢”,让命令行工具走代理 | 下载 GitHub 源码、安装国外 Python/Node 库 |
后续优化建议:
- Zsh 主题美化:Oh-My-Zsh 支持多种主题(如 agnoster、powerlevel10k),可在 ~/.zshrc 中修改 ZSH_THEME="powerlevel10k/powerlevel10k",搭配 Fira Code 字体实现更炫酷的终端效果;
- Neovim 配置优化:若觉得手动配置麻烦,可使用开源配置方案(如 NvChad、LazyVim),一键实现代码补全、语法高亮、文件管理等功能;
- 代理自动切换:可编写 Shell 脚本,实现 “国内网站直连、国外网站走代理” 的自动切换(如结合 curl 判断网站可达性,动态修改 Proxychains 配置)。
通过这套工具集,可让 Linux/macOS 命令行从 “基础工具” 升级为 “高效生产力平台”,后续可根据自身需求逐步扩展(如添加 htop 监控系统、fzf 模糊查找文件等)。