Posted at

http_proxy環境変数からホスト名、ポート、ユーザー名、パスワードを抽出

More than 1 year has passed since last update.


http_proxy環境変数からホスト名、ポート、ユーザー名、パスワードを抽出

bashのTIPSとして、bashでhttp_proxy環境変数からホスト名、ポート、ユーザー名、パスワードを分離する方法を紹介します。

CIなどでファイルにプロキシ設定する場合などにどうぞ

if [[ $http_proxy = *@* ]]; then

ADDR=${http_proxy#*://}
AUTH_INFO=${ADDR%@*}
ADDR=${ADDR#*@}
echo "ホスト名=${ADDR%:*}"
echo "ポート番号=${ADDR#*:}"
echo "ユーザー名=${AUTH_INFO%:*}"
echo "パスワード=${AUTH_INFO#*:}"
else
ADDR=${http_proxy#*://}
echo "ホスト名=${ADDR%:*}"
echo "パスワード=${ADDR#*:}"
fi


ちょっと解説

if [[ $http_proxy = *@* ]]

これは、認証あり(http://user:pass@host:port)か

なし(http://host:port)かを判定しています。

その後は文字列の抜き出しです。

http://qiita.com/koara-local/items/04d3efd1031ea62d8db5

↑などを参考にしました。