Borrar las variables de proxy de Bash y Zsh con una función unproxy
Corrige un auxiliar de shell que solo elimina all_proxy después de habilitar las variables por protocolo y ALL_PROXY en mayúsculas.
Este auxiliar de shell tiene un interruptor de apagado incompleto:
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'
En un shell de Unix, all_proxy y ALL_PROXY son nombres distintos. El alias no elimina ninguna de las tres variables anteriores. Si solo eliminas ALL_PROXY en mayúsculas, las dos opciones específicas de protocolo seguirán ahí.
Para borrar estos nombres habituales de la sesión actual de Bash o Zsh:
unproxy() {
unset http_proxy https_proxy all_proxy
unset HTTP_PROXY HTTPS_PROXY ALL_PROXY
}
Invoca la función en el shell cuyos comandos posteriores deben heredar el entorno limpio. Un script hijo no puede limpiar el entorno de su terminal padre.
Las aplicaciones que ya se están ejecutando conservan su propio estado. Un archivo de configuración de curl, un ajuste de Git, una preferencia del navegador o una opción explícita del comando también pueden seleccionar un proxy después de eliminar las variables. Si el tráfico sigue usándolo, revisa la configuración de ese cliente.