Categories
技术讨论

在wget命令行中使用代理

wget是一个基于命令行的小巧而又功能强大的下载工具,至今没有发现与之匹敌的软件。wget本是*inx下的程序,后有人port到了windows平台下。

wget的强大功能无须多言,但是在windows平台下,下载代理的设置一直没有琢磨透。在*inx平台下,只需要在用户目录中增加.wgetrc文件,其中加上如下两行即可:

http-proxy=proxy.satwe.com:8080
ftp-proxy=proxy.satwe.com:8080

如果代理需要用户名密码,则可以在命令行中指定,如

wget –proxy=on –proxy-user=hamo –proxy-password=8888 http://www.satwe.com

但是在windows平台下,这个.wgetrc文件一直没有搞定,网上有如下两种方法:

  • 在用户变量中增加HOME,指向某一目录,然后在该目录中放置.wgetrc文件,或者
  • 在用户变量中增加WGETRC,指向.wgetrc文件的绝对路径

第一种方法试过,没有效果,第二种方法倒是起作用,但是运行wget时候总是提示“c:/.wgetrc”没有这个文件(c:/.wgetrc是WGETRC指定的)。

最后没有办法,再研究wget的帮助,赫然发现有个“-e”的选项,可以执行在.wgetrc中的指令,于是就简单了。此方法也适用于想在命令行直接指定代理的需要。

这样写就可以了:

wget -e http-proxy=proxy.satwe.com:8080 –proxy=on –proxy-user=hamo –proxy-passwd=8888 -c http://www.satwe.com

工作正常,至于如何windows平台下使用.wgetrc文件,欢迎指教。

3 replies on “在wget命令行中使用代理”

windows下方法一样啊,哈哈。你在linux平台建一个文件,然后往win下面拷贝.wgetrc, 我是把这2个文件都放到system32下的。 😉

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.