`
mowengaobo
  • 浏览: 165207 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

ubuntu笔记之wget使用方法

 
阅读更多
转载自 dxwangtcg
最终编辑 dxwangtcg

wget是一个从网络上自动下载文件的自由工具。它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理.

所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统,启动一个wget下载任务,然后退出系统,wget将在后台执行直到任务完成,相对于其它大部分浏览器在下载大量数据时需要用户一直的参与,这省去了极大的麻烦。

wget 可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本,完全重建原始站点的目录结构。这又常被称作"递归下载"。在递归下载的时候,wget 遵循Robot Exclusion标准(/robots.txt). wget可以在下载的同时,将链接转换成指向本地文件,以方便离线浏览。

wget 非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性.如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务 器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。

wget的常见用法

wget的使用格式

Usage: wget [OPTION]... [URL]...
  • 用wget做站点镜像:
wget -r -p -np -k http://dsec.pku.edu.cn/~usr_name/# 或者wget -m http://www.tldp.org/LDP/abs/html/
  • 在不稳定的网络上下载一个部分下载的文件,以及在空闲时段下载
wget -t 0 -w 31 -c http://dsec.pku.edu.cn/BBC.avi -o down.log &# 或者从filelist读入要下载的文件列表wget -t 0 -w 31 -c -B ftp://dsec.pku.edu.cn/linuxsoft -i filelist.txt -o down.log &

上面的代码还可以用来在网络比较空闲的时段进行下载。我的用法是:在mozilla中将不方便当时下载的URL链接拷贝到内存中然后粘贴到文件filelist.txt中,在晚上要出去系统前执行上面代码的第二条。

 

  • 使用代理下载
wget -Y on -p -k https://sourceforge.net/projects/wvware/

代理可以在环境变量或wgetrc文件中设定

# 在环境变量中设定代理export PROXY=http://211.90.168.94:8080/# 在~/.wgetrc中设定代理http_proxy = http://proxy.yoyodyne.com:18023/ftp_proxy = http://proxy.yoyodyne.com:18023/

wget各种选项分类列表

  • 启动
-V,  --version           显示wget的版本后退出  -h,  --help              打印语法帮助  -b,  --background        启动后转入后台执行  -e,  --execute=COMMAND   执行`.wgetrc'格式的命令,wgetrc格式参见/etc/wgetrc或~/.wgetrc
  • 记录和输入文件
-o,  --output-file=FILE     把记录写到FILE文件中  -a,  --append-output=FILE   把记录追加到FILE文件中  -d,  --debug                打印调试输出  -q,  --quiet                安静模式(没有输出)  -v,  --verbose              冗长模式(这是缺省设置)  -nv, --non-verbose          关掉冗长模式,但不是安静模式  -i,  --input-file=FILE      下载在FILE文件中出现的URLs  -F,  --force-html           把输入文件当作HTML格式文件对待  -B,  --base=URL             将URL作为在-F -i参数指定的文件中出现的相对链接的前缀       --sslcertfile=FILE     可选客户端证书       --sslcertkey=KEYFILE   可选客户端证书的KEYFILE       --egd-file=FILE        指定EGD socket的文件名
  • 下载
--bind-address=ADDRESS   指定本地使用地址(主机名或IP,当本地有多个IP或名字时使用)  -t,  --tries=NUMBER           设定最大尝试链接次数(0 表示无限制).  -O   --output-document=FILE   把文档写到FILE文件中  -nc, --no-clobber             不要覆盖存在的文件或使用.#前缀  -c,  --continue               接着下载没下载完的文件       --progress=TYPE          设定进程条标记  -N,  --timestamping           不要重新下载文件除非比本地文件新  -S,  --server-response        打印服务器的回应       --spider                 不下载任何东西  -T,  --timeout=SECONDS        设定响应超时的秒数  -w,  --wait=SECONDS           两次尝试之间间隔SECONDS秒       --waitretry=SECONDS      在重新链接之间等待1...SECONDS秒       --random-wait            在下载之间等待0...2*WAIT秒  -Y,  --proxy=on/off           打开或关闭代理  -Q,  --quota=NUMBER           设置下载的容量限制       --limit-rate=RATE        限定下载输率
  • 目录
-nd  --no-directories            不创建目录  -x,  --force-directories         强制创建目录  -nH, --no-host-directories       不创建主机目录  -P,  --directory-prefix=PREFIX   将文件保存到目录 PREFIX/...       --cut-dirs=NUMBER           忽略 NUMBER层远程目录
  • HTTP 选项
--http-user=USER      设定HTTP用户名为 USER.       --http-passwd=PASS    设定http密码为 PASS.  -C,  --cache=on/off        允许/不允许服务器端的数据缓存 (一般情况下允许).  -E,  --html-extension      将所有text/html文档以.html扩展名保存       --ignore-length       忽略 `Content-Length'头域       --header=STRING       在headers中插入字符串 STRING       --proxy-user=USER     设定代理的用户名为 USER       --proxy-passwd=PASS   设定代理的密码为 PASS       --referer=URL         在HTTP请求中包含 `Referer: URL'头  -s,  --save-headers        保存HTTP头到文件  -U,  --user-agent=AGENT    设定代理的名称为 AGENT而不是 Wget/VERSION.       --no-http-keep-alive  关闭 HTTP活动链接 (永远链接).       --cookies=off         不使用 cookies.       --load-cookies=FILE   在开始会话前从文件 FILE中加载cookie       --save-cookies=FILE   在会话结束后将 cookies保存到 FILE文件中
  • FTP 选项
-nr, --dont-remove-listing   不移走 `.listing'文件  -g,  --glob=on/off           打开或关闭文件名的 globbing机制       --passive-ftp           使用被动传输模式 (缺省值).       --active-ftp            使用主动传输模式       --retr-symlinks         在递归的时候,将链接指向文件(而不是目录)
  • 递归下载
-r,  --recursive          递归下载--慎用!  -l,  --level=NUMBER       最大递归深度 (inf 或 0 代表无穷).       --delete-after       在现在完毕后局部删除文件  -k,  --convert-links      转换非相对链接为相对链接  -K,  --backup-converted   在转换文件X之前,将之备份为 X.orig  -m,  --mirror             等价于 -r -N -l inf -nr.  -p,  --page-requisites    下载显示HTML文件的所有图片
  • 递归下载中的包含和不包含(accept/reject)
-A,  --accept=LIST                分号分隔的被接受扩展名的列表  -R,  --reject=LIST                分号分隔的不被接受的扩展名的列表  -D,  --domains=LIST               分号分隔的被接受域的列表       --exclude-domains=LIST       分号分隔的不被接受的域的列表       --follow-ftp                 跟踪HTML文档中的FTP链接       --follow-tags=LIST           分号分隔的被跟踪的HTML标签的列表  -G,  --ignore-tags=LIST           分号分隔的被忽略的HTML标签的列表  -H,  --span-hosts                 当递归时转到外部主机  -L,  --relative                   仅仅跟踪相对链接  -I,  --include-directories=LIST   允许目录的列表  -X,  --exclude-directories=LIST   不被包含目录的列表  -np, --no-parent                  不要追溯到父目录

问题

在递归下载的时候,遇到目录中有中文的时候,wget创建的本地目录名会用URL编码规则处理。如"天网防火墙"会被存为"%CC%EC%CD%F8%B7%C0%BB%F0%C7%BD",这造成阅读上的极大不方便。

wget使用方法
Shell

wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上。它有以下功能和特点:
(1)支持断点下传功能;这一点,也是网络蚂蚁和FlashGet当年最大的卖点,现在,Wget也可以使用此功能,那些网络不是太好的用户可以放心了;
(2)同时支持FTP和HTTP下载方式;尽管现在大部分软件可以使用HTTP方式下载,但是,有些时候,仍然需要使用FTP方式下载软件;
(3)支持代理服务器;对安全强度很高的系统而言,一般不会将自己的系统直接暴露在互联网上,所以,支持代理是下载软件必须有的功能;
(4)设置方便简单;可能,习惯图形界面的用户已经不是太习惯命令行了,但是,命令行在设置上其实有更多的优点,最少,鼠标可以少点很多次,也不要担心是否错点鼠标;
(5)程序小,完全免费;程序小可以考虑不计,因为现在的硬盘实在太大了;完全免费就不得不考虑了,即使网络上有很多所谓的免费软件,但是,这些软件的广告却不是我们喜欢的;

wget虽然功能强大,但是使用起来还是比较简单的,基本的语法是:wget [参数列表] URL。下面就结合具体的例子来说明一下wget的用法。

注:wget url将会把文件下载到当前目录下面,如果将.wgetrc文件配置了proxy,则默认情况下proxy是打开的。
1、下载整个http或者ftp站点。
wget http://place.your.url/here
这个命令可以将http://place.your.url/here 首页下载下来。使用-x会强制建立服务器上一模一样的目录,如果使用-nd参数,那么服务器上下载的所有内容都会加到本地当前目录。

wget -r http://place.your.url/here

这个命令会按照递归的方法,下载服务器上所有的目录和文件,实质就是下载整个网站。这个命令一定要小心使用,因为在下载的时候,被下载网站指向的所有地址同样会被下载,因此,如果这个网站引用了其他网站,那么被引用的网站也会被下载下来!基于这个原因,这个参数不常用。
可以用-l number参数来指定下载的层次。例如只下载两层,那么使用-l 2。

要是您想制作镜像站点,那么可以使用-m参数,例如:wget -m http://place.your.url/here
这时wget会自动判断合适的参数来制作镜像站点。此时,wget会登录到服务器上,读入robots.txt并按robots.txt的规定来执行。

2、断点续传。
当文件特别大或者网络特别慢的时候,往往一个文件还没有下载完,连接就已经被切断,此时就需要断点续传。wget的断点续传是自动的,只需要使用-c参数,例如:
wget -c http://the.url.of/incomplete/file
使用断点续传要求服务器支持断点续传。-t参数表示重试次数,例如需要重试100次,那么就写-t 100,如果设成-t 0,那么表示无穷次重试,直到连接成功。-T参数表示超时等待时间,例如-T 120,表示等待120秒连接不上就算超时。

3、批量下载。
如果有多个文件需要下载,那么可以生成一个文件,把每个文件的URL写一行,例如生成文件download.txt,然后用命令:wget -i download.txt
这样就会把download.txt里面列出的每个URL都下载下来。(如果列的是文件就下载文件,如果列的是网站,那么下载首页)

4、选择性的下载。
可以指定让wget只下载一类文件,或者不下载什么文件。例如:
wget -m --reject=gif http://target.web.site/subdirectory
表示下载http://target.web.site/subdirectory,但是忽略gif文件。--accept=LIST 可以接受的文件类型,--reject=LIST拒绝接受的文件类型。

5、密码和认证。
wget只能处理利用用户名/密码方式限制访问的网站,可以利用两个参数:
--http-user=USER设置HTTP用户
--http-passwd=PASS设置HTTP密码
对于需要证书做认证的网站,就只能利用其他下载工具了,例如curl。

6、利用代理服务器进行下载。
如果用户的网络需要经过代理服务器,那么可以让wget通过代理服务器进行文件的下载。此时需要在当前用户的目录下创建一个.wgetrc文件。文件中可以设置代理服务器:
http-proxy = 111.111.111.111:8080
ftp-proxy = 111.111.111.111:8080
分别表示http的代理服务器和ftp的代理服务器。如果代理服务器需要密码则使用:
--proxy-user=USER设置代理用户
--proxy-passwd=PASS设置代理密码
这两个参数。
使用参数--proxy=on/off 使用或者关闭代理。
wget还有很多有用的功能,需要用户去挖掘。

附录:

命令格式:
wget [参数列表] [目标软件、网页的网址]

-V,--version 显示软件版本号然后退出;
-h,--help显示软件帮助信息;
-e,--execute=COMMAND 执行一个 “.wgetrc”命令

-o,--output-file=FILE 将软件输出信息保存到文件;
-a,--append-output=FILE将软件输出信息追加到文件;
-d,--debug显示输出信息;
-q,--quiet 不显示输出信息;
-i,--input-file=FILE 从文件中取得URL;

-t,--tries=NUMBER 是否下载次数(0表示无穷次)
-O --output-document=FILE下载文件保存为别的文件名
-nc, --no-clobber 不要覆盖已经存在的文件
-N,--timestamping只下载比本地新的文件
-T,--timeout=SECONDS 设置超时时间
-Y,--proxy=on/off 关闭代理

-nd,--no-directories 不建立目录
-x,--force-directories 强制建立目录

--http-user=USER设置HTTP用户
--http-passwd=PASS设置HTTP密码
--proxy-user=USER设置代理用户
--proxy-passwd=PASS设置代理密码

-r,--recursive 下载整个网站、目录(小心使用)
-l,--level=NUMBER 下载层次

-A,--accept=LIST 可以接受的文件类型
-R,--reject=LIST拒绝接受的文件类型
-D,--domains=LIST可以接受的域名
--exclude-domains=LIST拒绝的域名
-L,--relative 下载关联链接
--follow-ftp 只下载FTP链接
-H,--span-hosts 可以下载外面的主机
-I,--include-directories=LIST允许的目录
-X,--exclude-directories=LIST 拒绝的目录

中文文档名在平常的情况下会被编码, 但是在 --cut-dirs 时又是正常的,
wget -r -np -nH --cut-dirs=3 ftp://host/test/
测试.txt
wget -r -np -nH -nd ftp://host/test/
%B4%FA%B8%D5.txt
wget "ftp://host/test/*"
%B4%FA%B8%D5.txt

由 於不知名的原因,可能是为了避开特殊档名, wget 会自动将抓取档名的部分用 encode_string 处理过, 所以该 patch 就把被 encode_string 处理成 "%3A" 这种东西, 用 decode_string 还原成 ":", 并套用在目录与档案名称的部分,decode_string 是 wget 内建的函式。


WGet使用指南

wget是一个从网络上自动下载文件的自由工具。它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理.

所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统,启动一个wget下载任务,然后退出系统,wget将在后台执行直到任务完成,相对于其它大部分浏览器在下载大量数据时需要用户一直的参与,这省去了极大的麻烦。

wget 可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本,完全重建原始站点的目录结构。这又常被称作”递归下载”。在递归下载的时候,wget 遵循Robot Exclusion标准(/robots.txt). wget可以在下载的同时,将链接转换成指向本地文件,以方便离线浏览。

wget 非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性.如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完 毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。
wget的常见用法

wget的使用格式
Usage: wget [OPTION]... [URL]...
用wget做站点镜像:
wget -r -p -np -k http://dsec.pku.edu.cn/~usr_name/
# 或者
wget -m http://www.tldp.org/LDP/abs/html/
在不稳定的网络上下载一个部分下载的文件,以及在空闲时段下载
wget -t 0 -w 31 -c http://dsec.pku.edu.cn/BBC.avi -o down.log &
# 或者从filelist读入要下载的文件列表
wget -t 0 -w 31 -c -B ftp://dsec.pku.edu.cn/linuxsoft -i filelist.txt -o down.log &

上面的代码还可以用来在网络比较空闲的时段进行下载。我的用法是:在mozilla中将不方便当时下载的URL链接拷贝到内存中然后粘贴到文件filelist.txt中,在晚上要出去系统前执行上面代码的第二条。
使用代理下载
wget -Y on -p -k https://sourceforge.net/projects/wvware/

代理可以在环境变量或wgetrc文件中设定
# 在环境变量中设定代理
export PROXY=http://211.90.168.94:8080/
# 在~/.wgetrc中设定代理
http_proxy = http://proxy.yoyodyne.com:18023/
ftp_proxy = http://proxy.yoyodyne.com:18023/
wget各种选项分类列表
启动
-V, --version 显示wget的版本后退出
-h, --help 打印语法帮助
-b, --background 启动后转入后台执行
-e, --execute=COMMAND 执行`.wgetrc'格式的命令,wgetrc格式参见/etc/wgetrc或~/.wgetrc
记录和输入文件
-o, --output-file=FILE 把记录写到FILE文件中
-a, --append-output=FILE 把记录追加到FILE文件中
-d, --debug 打印调试输出
-q, --quiet 安静模式(没有输出)
-v, --verbose 冗长模式(这是缺省设置)
-nv, --non-verbose 关掉冗长模式,但不是安静模式
-i, --input-file=FILE 下载在FILE文件中出现的URLs
-F, --force-html 把输入文件当作HTML格式文件对待
-B, --base=URL 将URL作为在-F -i参数指定的文件中出现的相对链接的前缀
--sslcertfile=FILE 可选客户端证书
--sslcertkey=KEYFILE 可选客户端证书的KEYFILE
--egd-file=FILE 指定EGD socket的文件名
下载
--bind-address=ADDRESS 指定本地使用地址(主机名或IP,当本地有多个IP或名字时使用)
-t, --tries=NUMBER 设定最大尝试链接次数(0 表示无限制).
-O --output-document=FILE 把文档写到FILE文件中
-nc, --no-clobber 不要覆盖存在的文件或使用.#前缀
-c, --continue 接着下载没下载完的文件
--progress=TYPE 设定进程条标记
-N, --timestamping 不要重新下载文件除非比本地文件新
-S, --server-response 打印服务器的回应
--spider 不下载任何东西
-T, --timeout=SECONDS 设定响应超时的秒数
-w, --wait=SECONDS 两次尝试之间间隔SECONDS秒
--waitretry=SECONDS 在重新链接之间等待1...SECONDS秒
--random-wait 在下载之间等待0...2*WAIT秒
-Y, --proxy=on/off 打开或关闭代理
-Q, --quota=NUMBER 设置下载的容量限制
--limit-rate=RATE 限定下载输率
目录
-nd --no-directories 不创建目录
-x, --force-directories 强制创建目录
-nH, --no-host-directories 不创建主机目录
-P, --directory-prefix=PREFIX 将文件保存到目录 PREFIX/...
--cut-dirs=NUMBER 忽略 NUMBER层远程目录
HTTP 选项
--http-user=USER 设定HTTP用户名为 USER.
--http-passwd=PASS 设定http密码为 PASS.
-C, --cache=on/off 允许/不允许服务器端的数据缓存 (一般情况下允许).
-E, --html-extension 将所有text/html文档以.html扩展名保存
--ignore-length 忽略 `Content-Length'头域
--header=STRING 在headers中插入字符串 STRING
--proxy-user=USER 设定代理的用户名为 USER
--proxy-passwd=PASS 设定代理的密码为 PASS
--referer=URL 在HTTP请求中包含 `Referer: URL'头
-s, --save-headers 保存HTTP头到文件
-U, --user-agent=AGENT 设定代理的名称为 AGENT而不是 Wget/VERSION.
--no-http-keep-alive 关闭 HTTP活动链接 (永远链接).
--cookies=off 不使用 cookies.
--load-cookies=FILE 在开始会话前从文件 FILE中加载cookie
--save-cookies=FILE 在会话结束后将 cookies保存到 FILE文件中
FTP 选项
-nr, --dont-remove-listing 不移走 `.listing'文件
-g, --glob=on/off 打开或关闭文件名的 globbing机制
--passive-ftp 使用被动传输模式 (缺省值).
--active-ftp 使用主动传输模式
--retr-symlinks 在递归的时候,将链接指向文件(而不是目录)
递归下载
-r, --recursive 递归下载--慎用!
-l, --level=NUMBER 最大递归深度 (inf 或 0 代表无穷).
--delete-after 在现在完毕后局部删除文件
-k, --convert-links 转换非相对链接为相对链接
-K, --backup-converted 在转换文件X之前,将之备份为 X.orig
-m, --mirror 等价于 -r -N -l inf -nr.
-p, --page-requisites 下载显示HTML文件的所有图片
递归下载中的包含和不包含(accept/reject)
-A, --accept=LIST 分号分隔的被接受扩展名的列表
-R, --reject=LIST 分号分隔的不被接受的扩展名的列表
-D, --domains=LIST 分号分隔的被接受域的列表
--exclude-domains=LIST 分号分隔的不被接受的域的列表
--follow-ftp 跟踪HTML文档中的FTP链接
--follow-tags=LIST 分号分隔的被跟踪的HTML标签的列表
-G, --ignore-tags=LIST 分号分隔的被忽略的HTML标签的列表
-H, --span-hosts 当递归时转到外部主机
-L, --relative 仅仅跟踪相对链接
-I, --include-directories=LIST 允许目录的列表
-X, --exclude-directories=LIST 不被包含目录的列表
-np, --no-parent 不要追溯到父目录

wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上。它有以下功能和特点:
win环境下的wget.exe 下载:  

  (1)支持断点下传功能;这一点,也是网络蚂蚁和FlashGet当年最大的卖点,现在,Wget也可以使用此功能,那些网络不是太好的用户可以放心了;
  (2)同时支持FTP和HTTP下载方式;尽管现在大部分软件可以使用HTTP方式下载,但是,有些时候,仍然需要使用FTP方式下载软件;
  (3)支持代理服务器;对安全强度很高的系统而言,一般不会将自己的系统直接暴露在互联网上,所以,支持代理是下载软件必须有的功能;
  (4)设置方便简单;可能,习惯图形界面的用户已经不是太习惯命令行了,但是,命令行在设置上其实有更多的优点,最少,鼠标可以少点很多次,也不要担心是否错点鼠标;
  (5)程序小,完全免费;程序小可以考虑不计,因为现在的硬盘实在太大了;完全免费就不得不考虑了,即使网络上有很多所谓的免费软件,但是,这些软件的广告却不是我们喜欢的;

 

 

    wget虽然功能强大,但是使用起来还是比较简单的,基本的语法是:wget [参数列表] URL。下面就结合具体的例子来说明一下wget的用法。
    1、下载整个http或者ftp站点。
    wget
    这个命令可以将 首页下载下来。使用-x会强制建立服务器上一模一样的目录,如果使用-nd参数,那么服务器上下载的所有内容都会加到本地当前目录。

    wget -r
    这个命令会按照递归的方法,下载服务器上所有的目录和文件,实质就是下载整个网站。这个命令一定要小心使用,因为在下载的时候,被下载网站指向的所有地址 同样会被下载,因此,如果这个网站引用了其他网站,那么被引用的网站也会被下载下来!基于这个原因,这个参数不常用。可以用-l number参数来指定下载的层次。例如只下载两层,那么使用-l 2。

    要是您想制作镜像站点,那么可以使用-m参数,例如:wget -m
    这时wget会自动判断合适的参数来制作镜像站点。此时,wget会登录到服务器上,读入robots.txt并按robots.txt的规定来执行。

    2、断点续传。
    当文件特别大或者网络特别慢的时候,往往一个文件还没有下载完,连接就已经被切断,此时就需要断点续传。wget的断点续传是自动的,只需要使用-c参数,例如:
    wget -c
    使用断点续传要求服务器支持断点续传。-t参数表示重试次数,例如需要重试100次,那么就写-t 100,如果设成-t 0,那么表示无穷次重试,直到连接成功。-T参数表示超时等待时间,例如-T 120,表示等待120秒连接不上就算超时。

    3、批量下载。
    如果有多个文件需要下载,那么可以生成一个文件,把每个文件的URL写一行,例如生成文件download.txt,然后用命令:wget -i download.txt
这样就会把download.txt里面列出的每个URL都下载下来。(如果列的是文件就下载文件,如果列的是网站,那么下载首页)

    4、选择性的下载。
    可以指定让wget只下载一类文件,或者不下载什么文件。例如:
    wget -m --reject=gif
    表示下载,但是忽略gif文件。--accept=LIST 可以接受的文件类型,--reject=LIST拒绝接受的文件类型。

    5、密码和认证。
    wget只能处理利用用户名/密码方式限制访问的网站,可以利用两个参数:
    --http-user=USER设置HTTP用户
    --http-passwd=PASS设置HTTP密码
    对于需要证书做认证的网站,就只能利用其他下载工具了,例如curl。

    6、利用代理服务器进行下载。
    如果用户的网络需要经过代理服务器,那么可以让wget通过代理服务器进行文件的下载。此时需要在当前用户的目录下创建一个.wgetrc文件。文件中可以设置代理服务器:
    http-proxy = 111.111.111.111:8080
    ftp-proxy = 111.111.111.111:8080
    分别表示http的代理服务器和ftp的代理服务器。如果代理服务器需要密码则使用:
    --proxy-user=USER设置代理用户
    --proxy-passwd=PASS设置代理密码
    这两个参数。
    使用参数--proxy=on/off 使用或者关闭代理。
    wget还有很多有用的功能,需要用户去挖掘。

附录:

命令格式:
  wget [参数列表] [目标软件、网页的网址]

  -V,--version 显示软件版本号然后退出;
  -h,--help显示软件帮助信息;
  -e,--execute=COMMAND 执行一个 “.wgetrc”命令

  -o,--output-file=FILE 将软件输出信息保存到文件;
  -a,--append-output=FILE将软件输出信息追加到文件;
  -d,--debug显示输出信息;
  -q,--quiet 不显示输出信息;
  -i,--input-file=FILE 从文件中取得URL;

  -t,--tries=NUMBER 是否下载次数(0表示无穷次)
  -O --output-document=FILE下载文件保存为别的文件名
  -nc, --no-clobber 不要覆盖已经存在的文件
  -N,--timestamping只下载比本地新的文件
  -T,--timeout=SECONDS 设置超时时间
  -Y,--proxy=on/off 关闭代理

    -nd,--no-directories 不建立目录
  -x,--force-directories 强制建立目录

    --http-user=USER设置HTTP用户
  --http-passwd=PASS设置HTTP密码
  --proxy-user=USER设置代理用户
  --proxy-passwd=PASS设置代理密码

    -r,--recursive 下载整个网站、目录(小心使用)
  -l,--level=NUMBER 下载层次

    -A,--accept=LIST 可以接受的文件类型
  -R,--reject=LIST拒绝接受的文件类型
  -D,--domains=LIST可以接受的域名
  --exclude-domains=LIST拒绝的域名
  -L,--relative 下载关联链接
  --follow-ftp 只下载FTP链接
  -H,--span-hosts 可以下载外面的主机
  -I,--include-directories=LIST允许的目录
  -X,--exclude-directories=LIST 拒绝的目录

分享到:
评论

相关推荐

    ubuntu学习笔记1

    Ubuntu学习笔记涵盖了安装和配置SSH服务、检查网络连接、安装Java Development Kit (JDK)等关键知识点。以下是根据给定文件内容整理的知识点。 ### 安装和配置SSH服务 1. **Ubuntu版本**:Ubuntu-12.04-server-...

    适合Ubuntu的RTL8723BE无线网卡驱动

    6. **重启网络服务**:有时,为了使更改生效,还需要重启网络服务,可以使用`sudo service networking restart`或者`sudo systemctl restart networking.service`(取决于Ubuntu的版本)。 7. **验证连接**:最后,...

    OpenCV在Ubuntu上脚本自动安装

    具体步骤包括使用wget命令下载源代码包、解压文件,并进入OpenCV源代码目录。然后使用cmake命令生成Makefile文件。Makefile是用于控制编译过程的脚本文件,用户可以根据自身的需求选择需要编译的OpenCV模块。 生成...

    Linux笔记linux

    此外,笔记可能还会讲解包管理器如`apt`(Debian/Ubuntu系)或`yum`(RHEL/CentOS系)的使用,这些工具使得安装、更新和卸载软件变得简单。 最后,如果笔记深入,还可能探讨Linux的调度策略、内存管理、设备驱动...

    Qt环境搭建-思维导图-学习笔记

    通过wget命令下载Qt安装包并赋予执行权限,使用sudo权限安装Qt,断网后配置目录和组件,完成安装并启动Qt Creator。为配置Qt Creator的中文输入,在Ubuntu系统中安装简体中文语言包和中文输入法(如fcitx-sunpinyin...

    Libevent分析笔记.

    ### Libevent分析笔记 #### Libevent简介与特点 Libevent是一个高效的事件驱动库,它提供了一种机制,...通过掌握Libevent的安装和基本使用方法,开发者可以更好地利用其强大的功能,提升应用程序的性能和稳定性。

    linux编程学习笔记PDF资料下载.txt

    - **历史发展**:1991年,芬兰赫尔辛基大学的学生Linus Torvalds发布了一个名为Linux内核的操作系统核心,并在开源社区的帮助下迅速发展成为全球最受欢迎的服务器操作系统之一。 - **版本与发行版**:Linux内核有多...

    Rabbitmq安装笔记

    本篇RabbitMQ安装笔记详细记录了在Ubuntu环境中安装RabbitMQ的步骤,包括源地址的配置、公钥的添加、软件包的更新和安装、权限问题的解决方法以及分布式应用的简单说明。这个过程对希望在Linux环境下搭建消息代理...

    setup-ubuntu:安装ubuntu、nvidia显卡拓展坞驱动、cuda、常用软件

    在官方网站下载最新版本的Ubuntu ISO镜像后,你可以选择使用USB驱动器或DVD进行安装。确保在BIOS设置中选择从USB或DVD启动,然后按照安装向导的指示进行操作。记得在分区阶段选择“其他选项”,以便自定义磁盘布局,...

    wzdh.github.io:我的永久网址导航

    一键安装wireguard 脚本 Debian 9 (源:逗比网安装笔记)wget -qO- git.io/fptwc | bash一键安装wireguard 脚本 Ubuntu (源:逗比网安装笔记)wget -qO- git.io/fpcnL | bashCentOS 7 一键脚本安装WireGuard (官方脚本...

    petalinux创建笔记-长期维护版1

    【PetaLinux 创建笔记-长期维护版1】 PetaLinux 是一个专为Xilinx FPGA(现场可编程门阵列)系统芯片设计的嵌入式Linux系统开发工具包。该工具包提供了一整套流程,包括从项目初始化到构建完整的Linux系统镜像。...

    嵌入式HFRK开发板环境配置实验笔记

    需要注意的是,烧写操作通常需要在Windows环境下完成,因此如果你的开发环境是Ubuntu(如文中提到的Ubuntu 8.01),那么可能需要使用虚拟机或其他方法来进行烧写。 #### 二、ARMGCC交叉编译器制作 接下来,我们将...

    linux学习笔记.7z

    此外,学习Linux还包括理解和使用包管理系统,如`apt`(Debian/Ubuntu系)和`yum`或`dnf`(RHEL/CentOS系),它们能方便地安装、更新和卸载软件。理解编译和构建软件也是必要的,如使用`make`和`gcc`。 文件系统是...

    Ubuntu部署python3.5的开发和运行环境

    由于最近项目全部由python2.x转向 python3.x(使用目前最新的 python3.5.1) ,之前的云主机的的默认python版本都面临升级,故进行了升级后将相应的步骤记录下来,作为学习笔记吧。 服务器运行环境: ubuntu 14 LTS ...

    Linux学习笔记 常用命令汇总

    这些只是Linux学习笔记中可能会涵盖的一部分内容,实际的学习资料可能会更详细地介绍每个命令的参数、使用场景和实例。通过深入理解和实践这些命令,你将能够更好地掌握Linux系统,并为在IT领域的工作打下坚实的基础...

    linux服务器命令用法笔记

    本篇笔记主要针对Linux服务器中的常用命令及用法进行了详尽的总结,旨在帮助初学者快速上手,并为有一定经验的用户提供参考。 1. **基础命令** - `ls`:列出目录内容,通过`-l`选项可显示详细信息。 - `cd`:切换...

    配置xen环境及hadoop集群环境的学习笔记

    ### 配置XEN环境及Hadoop集群环境学习笔记 #### XEN虚拟机的安装配置 **XEN** 是一种开源虚拟化技术,允许在一台物理机器上运行多个操作系统实例,这些实例通常被称为“域”(Domains)。XEN 的安装配置涉及到安装...

    Ubuntu 16.04 主题美化及常用软件安装操作步骤图文解说

    libreOffice虽然是一款优秀的办公套件,但对于习惯使用WPS的用户来说,并非必需。可以通过以下命令将其卸载: ```bash sudo apt-get remove libreoffice-common ``` 后续的WPS安装将在本指南的“常用软件安装”...

    黑马程序员mysql在linux下的安装

    MySQL是世界上最流行的开源关系型数据库管理系统之一,尤其在Linux操作系统上的应用非常广泛。在Linux下安装MySQL涉及到多个步骤,包括环境准备、安装包获取、依赖处理、安装过程以及配置服务。接下来,我们将详细...

    kubeflow:在AKS中安装Kubeflow的脚本

    Kubeflow Kubeflow是一个运行在Kubernetes之上的开源平台,旨在使机器学习(ML)工作流变得...执行脚本的最简单方法是使用Azure Cloud Shell。 笔记 确保更新变量部分。 基于台式机的计算机有助于访问Kubeflow仪表板。

Global site tag (gtag.js) - Google Analytics