Wsl使用-01


wsl设置全局代理

自动设置代理

自动化脚本

#!/bin/sh

#hostip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }')
hostip=192.168.50.2
wslip=$(hostname -I | awk '{print $1}')
port=30003

PROXY_HTTP="http://${hostip}:${port}"

set_proxy(){
    export http_proxy="${PROXY_HTTP}"
    export HTTP_PROXY="${PROXY_HTTP}"

    export https_proxy="${PROXY_HTTP}"
    export HTTPS_proxy="${PROXY_HTTP}"
}

unset_proxy(){
    unset http_proxy
    unset HTTP_PROXY
    unset https_proxy
    unset HTTPS_PROXY
}

test_setting(){
    echo "Host ip:" ${hostip}
    echo "WSL ip:" ${wslip}
    echo "Current proxy:" $https_proxy
}

if [ "$1" = "set" ]
then
    set_proxy

elif [ "$1" = "unset" ]
then
    unset_proxy

elif [ "$1" = "test" ]
then
    test_setting
else
    echo "Unsupported arguments."
fi

启动脚本

. ./proxy.sh set

运行的时候不要忘记之前的 .,或者使用 source ./proxy.sh set,只有这样才能够修改环境变量
直接运行例如 ./proxy.sh set 或者 sh proxy.sh set,这样会是运行在一个子 shell 中,对当前 shell 没有效果

可以对脚本设置别名

alias proxy="source /path/to/proxy.sh"
. /path/to/proxy.sh set

文章作者: rokey
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 rokey !
评论
  目录