V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
sleepm
V2EX  ›  分享创造

抛砖引玉 快速切换 shell 代理设置

  •  
  •   sleepm ·
    sleepm · 2021-03-07 11:43:30 +08:00 · 2112 次点击
    这是一个创建于 1118 天前的主题,其中的信息可能已经有所发展或是发生改变。

    repo: https://github.com/sleepm/shell-proxy-utils

    支持 bash zsh fish powershell 一条命令修改 git npm snap 代理设置 ps: git:// 这种的需要修改 ~/.ssh/config

    逻辑很简单,switch 第一个参数,如果匹配就执行,不匹配就设置代理

    先判断是否设置了代理,如果设置相同就设置为空,没有就设置

    这些都是简单的支持命令行设置的程序,有些 wget curl 支持检查环境变量,如果有代理设置则直接使用

    复杂点的比如 apt,没有命令或参数去查询代理,只有配置文件 /etc/apt/apt.conf.d/proxy.conf 暂时不支持( shell 水平有限。。。)欢迎 pr

    13 条回复    2021-03-08 21:30:34 +08:00
    hsfzxjy
        1
    hsfzxjy  
       2021-03-07 11:49:43 +08:00 via Android
    我都是直接 proxychains
    cubecube
        2
    cubecube  
       2021-03-07 11:50:15 +08:00
    conf 配置
    1.增加 可以 grep 不到,则 cat >>到末尾添加
    2.取消 可以 sed 替换 删除
    greatghoul
        3
    greatghoul  
       2021-03-08 07:53:32 +08:00
    Proxifier
    sleepm
        4
    sleepm  
    OP
       2021-03-08 10:20:52 +08:00 via Android
    @hsfzxjy 看过文档,用起来并不灵活。。
    sleepm
        5
    sleepm  
    OP
       2021-03-08 10:21:31 +08:00 via Android
    @cubecube 谢谢,有想法了,晚上试试,不过感觉有点粗暴
    sleepm
        6
    sleepm  
    OP
       2021-03-08 10:24:58 +08:00 via Android
    @greatghoul 收费,而且对命令行不友好,支持 wsl2 么
    路由器上也可以搞透明代理,但是特殊时期不可能再跑到路由器上更新订阅切换线路吧。。。
    greatghoul
        7
    greatghoul  
       2021-03-08 10:38:31 +08:00
    @sleepm 没试过 wsl2,但是我给 virtualbox 应用规则后,虚拟机里面 npm install 什么的都自动走的代理,感觉蛮方便的。

    我开发时,是 Windows 10, 搭配 Virtualbox 里面的 ubuntu server 18.04 ,编辑器用 vscode + remote ssh,感觉还蛮爽的。开发玩游戏两不误。macbook 已经在吃灰了。
    sleepm
        8
    sleepm  
    OP
       2021-03-08 11:06:51 +08:00
    @greatghoul 哈哈,那我晚上试试吧
    我以前用的 wsl1 然后还有虚拟机,不过虚拟机不怎么开,升级 wsl2 后就把虚拟机卸载了,虽然 Virtualbox 支持 hyper-v 了,但是 wsl2 挺好使的
    hsfzxjy
        9
    hsfzxjy  
       2021-03-08 12:01:46 +08:00 via Android
    @sleepm 难道不是在要代理的命令前加条 proxychains 就好了吗
    sleepm
        10
    sleepm  
    OP
       2021-03-08 13:06:17 +08:00
    @hsfzxjy 实际使用了,确实比我的简单方便,多个代理的话就多个配置文件,用的时候指定就行,挺香的
    不过 proxychains npm install -g npm 出错了
    |DNS-response|: registry.npmjs.org does not existree buildDeps 可能是我网络问题。。
    hsfzxjy
        11
    hsfzxjy  
       2021-03-08 13:10:58 +08:00
    @sleepm #10 我这边挺稳的,可能是梯子的问题
    sleepm
        12
    sleepm  
    OP
       2021-03-08 14:38:25 +08:00
    @hsfzxjy 我原来直接 apt 安装的,是旧版本 proxychains3
    然后克隆了 haad 的 repo,编译完找不到 dlsym 符号,按照 issue 33 改了 configure 好了
    proxychains4 npm install -g npm 正常工作了
    sleepm
        13
    sleepm  
    OP
       2021-03-08 21:30:34 +08:00
    @greatghoul wsl2 Proxifier 不支持 rule 设置 interface 也不行
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2863 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 13:51 · PVG 21:51 · LAX 06:51 · JFK 09:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.