unproxy 関数で Bash と Zsh のプロキシ変数を消す
プロトコル別の変数と大文字の ALL_PROXY を有効にした後、all_proxy だけを消す shell ヘルパーを修正します。
この shell ヘルパーには不完全な無効化スイッチがあります:
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 は上の 3 つの変数をどれも削除しません。大文字の ALL_PROXY だけを消しても、プロトコル別の 2 つの設定は残ります。
これらの一般的な名前を現在の Bash または Zsh セッションから消すには:
unproxy() {
unset http_proxy https_proxy all_proxy
unset HTTP_PROXY HTTPS_PROXY ALL_PROXY
}
後続のコマンドが整理された環境を引き継ぐべきシェルで、関数を呼び出します。子スクリプトは親ターミナルの環境を消すことはできません。
すでに実行中のアプリケーションは独自の状態を保持します。curl の設定ファイル、Git の設定、ブラウザの設定、明示的なコマンドオプションも、変数を削除した後にプロキシを選択できます。トラフィックがまだプロキシを使っている場合は、そのクライアントの設定を確認してください。