Curățați variabilele proxy din Bash și Zsh cu o funcție unproxy
Corectați un ajutor shell care elimină doar all_proxy după activarea variabilelor specifice protocolului și a lui ALL_PROXY cu majuscule.
Acest ajutor shell are un întrerupător incomplet:
export http_proxy=http://127.0.0.1:1087
export https_proxy=http://127.0.0.1:1087
export ALL_PROXY=socks5://127.0.0.1:1080
alias unproxy='unset all_proxy'
Într-un shell Unix, all_proxy și ALL_PROXY sunt nume diferite. Aliasul nu elimină niciuna dintre cele trei variabile de mai sus. Dacă eliminați doar ALL_PROXY cu majuscule, cele două setări specifice protocolului rămân.
Pentru a curăța aceste nume obișnuite din sesiunea Bash sau Zsh curentă:
unproxy() {
unset http_proxy https_proxy all_proxy
unset HTTP_PROXY HTTPS_PROXY ALL_PROXY
}
Apelați funcția în shell-ul ale cărui comenzi ulterioare trebuie să moștenească mediul curățat. Un script copil nu poate curăța mediul terminalului părinte.
Aplicațiile deja pornite își păstrează starea proprie. Un fișier de configurare curl, o setare Git, o preferință de browser sau o opțiune explicită de comandă pot selecta de asemenea un proxy după ce variabilele sunt eliminate. Dacă traficul îl mai folosește, inspectați configurația acelui client.