美文网首页
命令行下快捷开关代理

命令行下快捷开关代理

作者: Chaos_John | 来源:发表于2020-12-09 20:47 被阅读0次

前言

笔者经常会遇到在命令行下不得不走代理的情况:

  • Homebrew & Cask(特别是后者,不走代理的话速度简直感人)
  • Github 执行各种操作(clone / pull / push / fetch

旧方案

笔者在本地的 1080 端口搭建了 socks5 代理
开启代理:

export all_proxy=socks5://localhost:1080 && export ALL_PROXY=$all_proxy

有时候要用到局域网的另外一台电脑上搭建的代理,还得将 localhost 改为那台电脑的IP。

虽然 zsh 可以通过键入前几个字母比如 export all_ 然后通过 方向上健 快速定位到之间的历史,然后向左移动光标,删去 localhost,重新输入新的 IP,但是笔者还是嫌麻烦,所以动了造轮子的心思。

新方案

因为笔者采用的是 zsh,所以在 $HOME/.zshrc 内添加以下函数

function socks5on() {
  _PORT="1080"
  _HOST="127.0.0.1"

  if [ $# = 0 ]; then
  elif [ $# = 1 ]; then
    _PORT=$1
  elif [ $# = 2 ]; then
    _HOST=$1
    _PORT=$2
  fi
  export all_proxy=socks5://${_HOST}:${_PORT}
  export ALL_PROXY=$all_proxy
  echo $ALL_PROXY
}

function socks5off() {
  unset all_proxy
  unset ALL_PROXY
}

函数 socks5on 的用法:

  • $ socks5on 设置代理为 socks5://127.0.0.1:1080
  • $ socks5on 1081 设置代理为 socks5://127.0.0.1:1081
  • $ socks5on 192.168.0.253 1080 设置代理为 socks5://192.168.0.253:1080

函数 socks5off 的用法:

  • $ socks5off 取消代理设置

注意:

  1. socks5on 函数里,笔者变量取名 _HOST 而不是 HOST,是因为 $HOST 默认存放系统主机名称。

  2. all_proxyALL_PROXY 同时都设置,是因为,有的程序读取 $all_proxy,有的程序读取 $ALL_PROXY

读者可以拿去自行更改食用哈。

相关文章

  • 命令行下快捷开关代理

    前言 笔者经常会遇到在命令行下不得不走代理的情况: Homebrew & Cask(特别是后者,不走代理的话速度简...

  • iOS快捷控制开关设计问题

    iOS从7.0版开始提供快捷控制开关了,可快捷设置Wifi开关、手电筒开关以及在锁屏状态下快捷进入相机应用等。 在...

  • mac快速设置终端代理

    有时候需要频繁的切换终端代理,可以试用以下操作,快捷方便的开关代理。 在~/.bash_profile 文件中,添...

  • Linux 命令行技巧

    命令行技巧 ALT快捷键在WIN下Xshell不可用 命令行快捷键 ctrl + a 光标切换到命令行行首 ...

  • Ubuntu设置代理

    Ubuntu14.04设置网络代理 buntu下apt-get的网络代理设置(终端命令行的网络代理设置) 方法一:...

  • android快捷键

    在Android源码中,提供的快捷开关相对是比较少的,Android4.0系统默认提供的桌面快捷开关AppWidg...

  • linux命令行常用光标移动快捷键

    Linux 命令行快捷键 涉及在linux命令行下进行快速移动光标、命令编辑、编辑后执行历史命令、Bang(!)命...

  • Linux 命令行快捷操作

    Linux 命令行快捷操作

  • Electron 支持的Chrome命令行开关

    本节我们来看一下 Chrome 浏览器和 Electron 中支持的命令行开关。我们可以将这些命令行开发在 app...

  • BASH命令行快捷键指南(二)

    题图:Rocky自画BASH快捷键导图 上一篇《BASH命令行快捷键指南(一)》中列举了BASH下常用的快捷键,但...

网友评论

      本文标题:命令行下快捷开关代理

      本文链接:https://www.haomeiwen.com/subject/xmrkgktx.html