赞
踩
wget [选项]... [URL]...
开始:
-V, --version:显示
Wget
的版本信息并退出。
-h, --help:打印此帮助。
-b, --background:启动后转入后台。
-e, --execute=COMMAND:运行一个‘.wgetrc’风格的命令
登入并输入文件:
-o, --output-
file
=FILE:将信息写入 FILE。
-a, --append-output=FILE:将信息添加至 FILE。
-d, --debug:打印大量调试信息。
-q, --quiet:安静模式(无信息输出)。
-
v, --verbose:详尽的输出(此为默认值)。
-nv, --no-verbose:关闭详尽输出,但不进入安静模式。
-i, --input-
file=FILE:下载本地或外部 FILE 中的 URLs。
-F, --force-html:把输入文件当成 HTML 文件。
-B, --base=URL:解析与 URL 相关的HTML 输入文件(由 -i -F 选项指定)。
下载:
-t, --tries=NUMBER:设置重试次数为 NUMBER (0 代表无限制)。
--retry-connrefused:即使拒绝连接也是重试。
-O, --output-document=FILE:将文档写入 FILE。
-
nc, --no-clobber:不要重复下载已存在的文件。
-c, --continue:
继续下载部分下载的文件。
--progress=TYPE:选择进度条类型。
-N, --timestamping:只获取比本地文件新的文件。
-S, --server-response:打印服务器响应。
--spider:不下载任何文件。
-T, --timeout=SECONDS:将所有超时设为 SECONDS 秒。
--dns-timeout=SECS:设置 DNS 查寻超时为 SECS 秒。
--connect-timeout=SECS 设置连接超时为 SECS 秒。
--
read
-timeout=SECS 设置读取超时为 SECS 秒。
-w, --wait=SECONDS 等待间隔为 SECONDS 秒。
--waitretry=SECONDS 在取回文件的重试期间等待 1..SECONDS 秒。
--random-wait 取回时等待 0...2*WAIT 秒。
--no-proxy 关闭代理。
-Q, --
quota
=NUMBER 设置取回配额为 NUMBER 字节。
--bind-address=ADDRESS 绑定至本地主机上的 ADDRESS (主机名或是 IP)。
--limit-rate=RATE 限制下载速率为 RATE。
--no-dns-cache 关闭 DNS 查寻缓存。
--restrict-
file
-names=OS 限定文件名中的字符为 OS 允许的字符。
--ignore-
case
匹配文件/目录时忽略大小写。
-4, --inet4-only 仅连接至 IPv4 地址。
-6, --inet6-only 仅连接至 IPv6 地址。
--prefer-family=FAMILY 首先连接至指定协议的地址
AMILY 为 IPv6,IPv4 或是 none。
--user=USER 将
ftp
和 http 的用户名均设置为 USER。
--password=PASS 将
ftp
和 http 的密码均设置为 PASS。
--ask-password 提示输入密码。
--no-iri 关闭 IRI 支持。
--
local
-encoding=ENC IRI 使用 ENC 作为本地编码。
--remote-encoding=ENC 使用 ENC 作为默认远程编码。
目录:
-nd, --no-directories 不创建目录。
-x, --force-directories 强制创建目录。
-nH, --no-host-directories 不要创建主目录。
--protocol-directories 在目录中使用协议名称。
-P, --directory-prefix=PREFIX 以 PREFIX/... 保存文件
--
cut
-
dirs
=NUMBER 忽略 NUMBER 个远程目录路径。
HTTP 选项:
--http-user=USER 设置 http 用户名为 USER。
--http-password=PASS 设置 http 密码为 PASS。
--no-cache 不在服务器上缓存数据。
--default-page=NAME 改变默认页
(默认页通常是“index.html”)。
-E, --adjust-extension 以合适的扩展名保存 HTML
/CSS
文档。
--ignore-length 忽略头部的‘Content-Length’区域。
--header=STRING 在头部插入 STRING。
--max-redirect 每页所允许的最大重定向。
--proxy-user=USER 使用 USER 作为代理用户名。
--proxy-password=PASS 使用 PASS 作为代理密码。
--referer=URL 在 HTTP 请求头包含‘Referer: URL’。
--save-headers 将 HTTP 头保存至文件。
-U, --user-agent=AGENT 标识为 AGENT 而不是
Wget
/VERSION
--no-http-keep-alive 禁用 HTTP keep-alive(永久连接)。
--no-cookies 不使用 cookies。
--load-cookies=FILE 会话开始前从 FILE 中载入 cookies。
--save-cookies=FILE 会话结束后保存 cookies 至 FILE。
--keep-session-cookies 载入并保存会话(非永久) cookies。
--post-data=STRING 使用 POST 方式;把 STRING 作为数据发送。
--post-
file
=FILE 使用 POST 方式;发送 FILE 内容。
--content-disposition 当选中本地文件名时
允许 Content-Disposition 头部(尚在实验)。
--auth-no-challenge send Basic HTTP authentication information
without first waiting
for
the server's
challenge.
HTTPS (SSL
/TLS) 选项
:
--secure-protocol=PR 选择安全协议,可以是 auto、SSLv2、
SSLv3 或是 TLSv1 中的一个。
--no-check-certificate 不要验证服务器的证书。
--certificate=FILE 客户端证书文件。
--certificate-
type
=TYPE 客户端证书类型, PEM 或 DER。
--private-key=FILE 私钥文件。
--private-key-
type
=TYPE 私钥文件类型, PEM 或 DER。
--ca-certificate=FILE 带有一组 CA 认证的文件。
--ca-directory=DIR 保存 CA 认证的哈希列表的目录。
--random-
file
=FILE 带有生成 SSL PRNG 的随机数据的文件。
--egd-
file
=FILE 用于命名带有随机数据的 EGD 套接字的文件。
FTP 选项:
--
ftp
-user=USER 设置
ftp
用户名为 USER。
--
ftp
-password=PASS 设置
ftp
密码为 PASS。
--no-remove-listing 不要删除‘.listing’文件。
--no-glob 不在 FTP 文件名中使用通配符展开。
--no-passive-
ftp
禁用“passive”传输模式。
--retr-symlinks 递归目录时,获取链接的文件(而非目录)。
递归下载:
-r, --recursive 指定递归下载。
-l, --level=NUMBER 最大递归深度( inf 或 0 代表无限制,即全部下载)。
--delete-after 下载完成后删除本地文件。
-k, --convert-links 让下载得到的 HTML 或 CSS 中的链接指向本地文件。
-K, --backup-converted 在转换文件 X 前先将它备份为 X.orig。
-m, --mirror -N -r -l inf --no-remove-listing 的缩写形式。
-p, --page-requisites 下载所有用于显示 HTML 页面的图片之类的元素。
--strict-comments 开启 HTML 注释的精确处理(SGML)。
递归接受/拒绝:
-A, --accept=LIST 逗号分隔的可接受的扩展名列表。
-R, --reject=LIST 逗号分隔的要拒绝的扩展名列表。
-D, --domains=LIST 逗号分隔的可接受的域列表。
--exclude-domains=LIST 逗号分隔的要拒绝的域列表。
--follow-
ftp
跟踪 HTML 文档中的 FTP 链接。
--follow-tags=LIST 逗号分隔的跟踪的 HTML 标识列表。
--ignore-tags=LIST 逗号分隔的忽略的 HTML 标识列表。
-H, --span-hosts 递归时转向外部主机。
-L, --relative 只跟踪有关系的链接。
-I, --include-directories=LIST 允许目录的列表。
-X, --exclude-directories=LIST 排除目录的列表。
-np, --no-parent 不追溯至父目录。
案例
- 第一步:用Python命令开启一个HTTP服务端,端口为8080,服务端的根目录为当前路径
- 第二步:在另一端连接上面python开启的HTTP服务器,并且下载其中的busybox-i686文件
- 在服务端可以看到对方的下载记录:
案例(-O选项的使用)
- 第一步:用Python命令开启一个HTTP服务端,端口为8080,服务端的根目录为当前路径
- 第二步:使用wget -O下载并以不同的文件名保存(-O:下载文件到对应目录,并且修改文件名称)
案例(--spider选项的使用)
- 第一步:用Python命令开启一个HTTP服务端,端口为8080,服务端的根目录为当前路径
- 第二步:利用-spider: 模拟下载,不会下载,只是会检查网站是否开放存在,而不获取任何数据
- 在另一端可以看到
案例(-S选项的使用)
- 第一步:用Python命令开启一个HTTP服务端,端口为8080,服务端的根目录为当前路径
- 第二步:模拟下载打印服务器响应
案例(-r --tries选项的使用)
wget -r --tries=2 192.168.43.20:8080 #(指定尝试2次,2次后不再尝试) wget -r --tries=2 -q 192.168.43.20:8080 #(指定尝试2次,且不打印中间结果)
- 可以看到产生一个新的文件夹,并且把对方的文件都下载下来了
- 我们将目录删除,重新下载,不打印信息
案例(----user-agent选项的使用)
- 有些网站,例如facebook,会检测请求方式是否是浏览器,如果不是正常的浏览器,那么会redirect到一个"incompatible browser"的错误页面。这时候需要wget伪装成一个浏览器
- 用Python命令开启一个HTTP服务端,端口为8080,服务端的根目录为当前路径
- 在另一端使用下面的命令连接HTTPS服务器(命令太长就没有全部截取)
- 备注:User-Agent的类别很多,自己去百度搜索,下面我们使用的是一个谷歌浏览器的User-Agent
wget --user-agent="Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36" http://192.168.43.20:8080/busybox-i686
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。