Ten pomocnik powłoki ma niepełny wyłącznik:

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'

W powłoce Unix all_proxy i ALL_PROXY to różne nazwy. Ten alias nie usuwa żadnej z trzech powyższych zmiennych. Usunięcie tylko wielkiego ALL_PROXY pozostawi oba ustawienia właściwe dla protokołu.

Aby wyczyścić te popularne nazwy z bieżącej sesji Bash lub Zsh:

unproxy() {
  unset http_proxy https_proxy all_proxy
  unset HTTP_PROXY HTTPS_PROXY ALL_PROXY
}

Wywołaj funkcję w tej powłoce, której kolejne polecenia mają odziedziczyć oczyszczone środowisko. Skrypt podrzędny nie może wyczyścić środowiska swojego terminala nadrzędnego.

Działające już aplikacje zachowują własny stan. Plik konfiguracyjny curl, ustawienie Git, preferencja przeglądarki lub jawna opcja polecenia również mogą wybrać proxy po usunięciu zmiennych. Jeśli ruch nadal go używa, sprawdź konfigurację tego klienta.

Powiązane artykuły