我想使用代理用户名、密码、主机和端口获取 URL 的标头响应?是否有任何 Linux 命令可以获得相同的响应?
答案1
下面的内容应该可以给你你想要的东西......
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/
(如果我正确理解了这个问题)如果你使用的发行版没有 wget,那么使用 curl 或带有 LWP 模块的 perl 可能会产生类似的结果……)
答案2
curl
Tom H 的回答版本是:
curl -I -U user:password -x http://myhttpdproxy.com:3128 http://www.google.co.uk/
curl
和都wget
将尊重用户名和密码的环境变量,例如:
export http_proxy="http://user:[email protected]:3128"
!, *, \, <, >, |, ~
如果密码包含 bash 会解释的字符(例如或其他几个字符),则可以将密码括在引号中。
请注意,在命令行上使用密码会导致密码出现在您的 bash 历史记录中,并且通常在命令运行时出现在进程列表中。似乎没有从文件中读取密码的选项,但将整个命令放入 bash 脚本中至少可以让密码不出现在您的 bash 历史记录中。将环境变量放入您的~/.bash_profile
似乎是最好的方法。