Je souhaite obtenir la réponse de l'en-tête d'une URL en utilisant le nom d'utilisateur, le mot de passe, l'hôte et le port du proxy. Existe-t-il une commande Linux permettant d'obtenir la même réponse ?
Réponses
Trop de publicités?Le texte suivant devrait vous permettre d'obtenir ce que vous souhaitez....
export http_proxy="http://myhttpdproxy.com:3128"
wget -q --server-response -O /dev/null --proxy-user=USER \
--proxy-password=PASS http://www.google.co.uk/
(si j'ai bien compris la question) Il est probablement possible de produire un résultat similaire avec curl ou perl avec le module LWP, si vous êtes sur une distro qui n'a pas de wget...)
En curl
La version de la réponse de Tom H est la suivante :
curl -I -U user:password -x http://myhttpdproxy.com:3128 http://www.google.co.uk/
Les deux curl
y wget
honorera également les variables d'environnement avec le nom d'utilisateur et le mot de passe, comme par exemple :
export http_proxy="http://user:password@myhttpdproxy.com:3128"
N'hésitez pas à mettre le mot de passe entre guillemets s'il contient des caractères que bash interprétera tels que !, *, \, <, >, |, ~
ou plusieurs autres.
Notez que l'utilisation du mot de passe sur la ligne de commande entraînera son enregistrement dans l'historique de bash et sera généralement disponible dans la liste des processus pendant l'exécution de la commande. Il ne semble pas y avoir d'option pour lire le mot de passe à partir d'un fichier, mais placer la commande entière dans un script de bash permettra au moins d'éviter que le mot de passe n'apparaisse dans l'historique de bash. Placer la variable d'environnement dans votre ~/.bash_profile
semble être la meilleure méthode.