unproxy 함수로 Bash와 Zsh 프록시 변수 정리하기
프로토콜별 변수와 대문자 ALL_PROXY를 켠 뒤 all_proxy만 제거하는 셸 도우미를 고칩니다.
이 셸 도우미에는 불완전한 해제 스위치가 있습니다:
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'
Unix 셸에서 all_proxy과 ALL_PROXY는 서로 다른 이름입니다. 이 alias는 위의 세 변수 중 어느 것도 제거하지 않습니다. 대문자 ALL_PROXY만 제거하면 프로토콜별 설정 두 개가 그대로 남습니다.
이 일반적인 이름들을 현재 Bash 또는 Zsh 세션에서 지우려면:
unproxy() {
unset http_proxy https_proxy all_proxy
unset HTTP_PROXY HTTPS_PROXY ALL_PROXY
}
이후 명령이 정리된 환경을 물려받아야 하는 셸에서 함수를 호출하세요. 자식 스크립트는 부모 터미널의 환경을 정리할 수 없습니다.
이미 실행 중인 애플리케이션은 자체 상태를 유지합니다. curl 구성 파일, Git 설정, 브라우저 환경 설정 또는 명시적 명령 옵션도 변수를 제거한 뒤 프록시를 선택할 수 있습니다. 트래픽이 여전히 프록시를 사용한다면 해당 클라이언트의 구성을 확인하세요.