# 在终端(Terminal)中快捷使用代理的方法

# 背景

每次在终端中 打开/关闭 代理都要经历以下几个步骤

  1. 在代理软件(如 Clash)中复制终端代理命令
  2. 粘贴到 终端 中,然后执行
  3. 执行需要访问外网的命令(如安装依赖、下载外网镜像)
  4. 关闭当前终端,让代理配置失效

假设你的代理工具启用的端口是2233,那么从代理工具复制的终端代理命令应该是

export https_proxy=http://127.0.0.1:2233 http_proxy=http://127.0.0.1:2233 all_proxy=socks5://127.0.0.1:2233

以下两个方法可以帮助你在终端中快捷使用代理。

# 高频命令配置别名

# gitp push; 走代理 push 代码到 github
alias gitp='git -c "http.proxy=socks://127.0.0.1:2233"'

# brewp install xxx; Mac 走代理加速安装
alias brewp='http_proxy=socks5://127.0.0.1:2233 https_proxy=socks5://127.0.0.1:2233 brew'

# 命令行快捷开启/关闭代理

创建一个 prx 函数,使用方法

# 开启
prx on
# 关闭
prx off

粘贴以下 prx 函数的实现代码到你的 ~/.zshrc~/.bashrc 中,重新打开终端即可

# 代理开关函数
function prx() {
  # 你的代理配置
  local PROXY_HTTP="http://127.0.0.1:2233"
  local PROXY_SOCKS="socks5://127.0.0.1:2233"

  case "$1" in
    on)
      export https_proxy=$PROXY_HTTP
      export http_proxy=$PROXY_HTTP
      export all_proxy=$PROXY_SOCKS
      echo "代理已开启: $PROXY_HTTP (HTTP), $PROXY_SOCKS (SOCKS5)"
      ;;
    off)
      unset https_proxy
      unset http_proxy
      unset all_proxy
      echo "代理已关闭"
      ;;
    *)
      echo "用法: prx {on|off}"
      ;;
  esac
}
💗 博主正处于裸辞待业状态,欢迎 商务合作 💗

相关文章

Vibe Coding 将程序编成黑盒,怎么办?

现在的开发者不再编写代码、review 代码,即使 SDD(Spec 驱动 Agent 开发)工作流也会面临类似问题 —— 开发者将逐渐放弃阅读 spec 文档。 如果 Agent 将开发者驱逐出编程工作流的所有阶段,那么程序终将成为黑盒,程序的可靠性、可维护性会成为新的问题。 解决办法 —— 我的开源项目 YorZ(柚子) 起因 Agent 会将开发 ...

终端开发环境搭建

都进入 AI 时代了啊啊啊啊,为什么还要花时间折腾上古时代的开发工具? 因为太好玩,实在忍不住。。。 Yazi Yazi 是一个终端文件管理工具,这是它的 logo。 平时总是不知不觉就打开了多个 Finder 窗口进行文件操作 ...

ZingAI.video 在线口播视频剪辑

ZingAI.video 字影是采用前沿 Web 技术构建的口播视频剪辑工具,欢迎体验 背景 我发现自己消费的视频基本都是口播类视频,且 AI 生成的视频绝大多数也是这类视频。 口播类视频并不是指狭义的主播(或数字人)念稿子,它的典型特征是传达的信息以文字语音为主,图像信息为辅的视频; ...

Web 网页自集成 HTTP 代理方案

前言 大部分程序员,想必都有会一个常用的抓包代理工具; 但在座的各位,可曾见过这样一款集成在 Web 应用中的代理工具? 它是明显区别于传统代理工具的,有以下特性: 零安装,零配置,Web 点击即用、APP 扫码即用;_(不 ...

个人 VSCode 高频快捷键总结

vscode 默认快捷键 |按键|描述|提示| |---|---|---| |cmd+shift+p|命令搜索|一切命令、指令的入口,不常用或没有快捷键的指令,可以搜索名称然后触发,尝试搜索 open | |tab控制| |cmd+n|新建tab页|常用于记录临时信息| |cmd+w|关闭tab页|关闭临时tab会有是否保存确认,Mac下cmd+d不保存(d ...

在Termux中运行web项目

Termux是什么 官网 > Termux is an Android terminal emulator and Linux environment app that works directly with no rooting or setup required. A minimal base system is installed au ...

VuePress 集成第三方评论模块

VuePress 是一个 Vue 驱动的静态网站生成器,用来写文档的体验很好,本站就是基于 VuePress 的。 VuePress 官方正在开发针对博客的优化功能Blog Support roadmap,已经有人在喊建议集成 disqu ...