2016-04-18 9 views

答えて

2

方法1

我々はscutilの出力を解析し、プロキシ設定を抽出するためにawkを使用することができてOSXヨセミテ上で実行していますよ。次のスニペットは、トリックを行います。

$ export http_proxy=`scutil --proxy | awk '\ 
/HTTPEnable/ { enabled = $3; } \ 
/HTTPProxy/ { server = $3; } \ 
/HTTPPort/ { port = $3; } \ 
END { if (enabled == "1") { print "http://" server ":" port; } }'` 
$ export HTTP_PROXY="${http_proxy}" 

このスクリプトはHTTPEnableHTTPProxy、およびHTTPPortためscutilの出力に見えます。プロキシが有効な場合、スクリプトはプロキシURLを出力し、それをhttp_proxy環境変数として設定します。プロキシが有効でない場合、スクリプトはhttp_proxyを空の文字列に設定します。いくつかのコマンドラインアプリケーションが代わりにそれを使用するので、最終行はHTTP_PROXY環境変数を設定します。

このスニペットを.bash_profileに配置すると、有線ネットワークと無線ネットワークを切り替える際にプロキシが自動的に設定されたままになります。

方法2

あなたは現在のプロキシを一覧表示する「はnetworksetup」の以下の用途の1つを使用するbashのログインスクリプトを作成してみてくださいし、サーバーのアドレスを解析し、現在にそれを適用することができターミナルセッション:

networksetup -getftpproxy <servicename> 
networksetup -getwebproxy <servicename> 
networksetup -getsecurewebproxy <servicename> 
networksetup -getstreamingproxy <servicename> 
networksetup -getgopherproxy <servicename> 
networksetup -getsocksfirewallproxy <servicename> 

だけで、すべての詳細と用途を確認するには、「manはnetworksetup」を検索し、あなたが使用している特定のプロキシを与えることができますはnetworksetupツールの他の用途があるかもしれません。

方法3 Terminalは、ネットワーク設定ウィンドウで設定されているプロキシ設定を使用しません。何も接続しないためです。ターミナルを使用するだけで、さまざまな方法でネットワークを使用するコマンドを起動できます。

export http_proxy="username:[email protected]:port" 

参照:https://dmorgan.info/posts/mac-network-proxy-terminal/

0

私はまさにそのlittle toolを書きました。使い方は簡単です。

  1. xCodeでコンパイルします。
  2. 追加:あなたの.profile.bashrc、または.bash_profile

    eval `./path/to/export-proxies` 
    

OS Xのコントロールパネルで定義されたように、それはすべての例外を含むすべてのプロトコル(HTTP、FTP、SOCKS)のために一般的に使用されるすべてのプロキシ環境変数($HTTP_PROXY$http_proxy$HttpProxyなど)を設定します。)

私はちょうどあなたがそれらを読んでするのではなく、設定値を設定したい見 EDIT;

提案や改善も常に歓迎されています。私はこれまでこれを行う方法を見つけていない。しかし、それ以外の場合は喜んで学習します...