🔍搜索⌘K

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 共享库文件,需手动指定路径。

解决步骤:

  1. 查找共享库路径:
# 全局搜索 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)
  1. 修改 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
  1. 保存后测试:
proxychains curl https://www.google.com

若不再报错且能正常返回内容,说明问题已解决。

六、总结:工具集使用场景与优先级

本文整理的工具覆盖 “终端环境 - 编辑工具 - 网络代理” 三大核心场景,实际使用中可按以下优先级配置:

优先级工具 / 模块核心价值适用场景
1(基础)系统依赖 + Zsh + Oh-My-Zsh搭建高效命令行环境,解决 “输入慢、无提示” 问题所有开发 / 运维场景,每天都用
2(编辑)Neovim + vim-plug + 语言支持替代 Vim/VS Code,终端内实现高效代码编辑写脚本、改配置文件、轻量开发
3(网络)V2Ray + Proxychains解决 “国外资源访问慢”,让命令行工具走代理下载 GitHub 源码、安装国外 Python/Node 库

后续优化建议:

  1. Zsh 主题美化:Oh-My-Zsh 支持多种主题(如 agnoster、powerlevel10k),可在 ~/.zshrc 中修改 ZSH_THEME=“powerlevel10k/powerlevel10k”,搭配 Fira Code 字体实现更炫酷的终端效果;
  2. Neovim 配置优化:若觉得手动配置麻烦,可使用开源配置方案(如 NvChad、LazyVim),一键实现代码补全、语法高亮、文件管理等功能;
  3. 代理自动切换:可编写 Shell 脚本,实现 “国内网站直连、国外网站走代理” 的自动切换(如结合 curl 判断网站可达性,动态修改 Proxychains 配置)。

通过这套工具集,可让 Linux/MacOS 命令行从 “基础工具” 升级为 “高效生产力平台”,后续可根据自身需求逐步扩展(如添加 htop 监控系统、fzf 模糊查找文件等)。