Linux wget命令详解

  wget是一个下载文件的工具,它用在命令行下。对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器。

  wget支持HTTP,HTTPS和FTP协议,可以使用HTTP代理。所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统,启动一个wget下载任务,然后退出系统,wget将在后台执行直到任务完成

   wget 可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本,完全重建原始站点的目录结构。这又常被称作”递归下载”。

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

wget常见命令参数

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
GNU Wget 1.12,非交互式的网络文件下载工具。
用法: 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    首先连接至指定协议的地址
                                 FAMILY 为 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                 不追溯至父目录。

常用的命令展示

使用wget -O下载并以不同的文件名保存(-O:下载文件到对应目录,并且修改文件名称)

?
1
wget -O wordpress.zip http://www.minjieren.com/download.aspx?id=1080

image

使用wget -b后台下载

?
1
wget -b <a href="http://www.minjieren.com/wordpress-3.1-zh_CN.zip">http://www.minjieren.com/wordpress-3.1-zh_CN.zip</a>
?
1
备注: 你可以使用以下命令来察看下载进度:tail -f wget-log

利用-spider: 模拟下载,不会下载,只是会检查是否网站是否好着

?
1
[root@localhost ~]# wget --spider  www.baidu.com    #不下载任何文件

image

模拟下载打印服务器响应

?
1
[root@localhost ~]# wget -S  www.baidu.com     # 打印服务器响应

image

设定指定次数

?
1
2
[root@localhost ~]#  wget -r --tries=2  www.baidu.com       (指定尝试2次,2次后不再尝试)
 [root@localhost ~]# wget -r --tries=2 -q www.baidu.com    (指定尝试,且不打印中间结果)

image

转载于:https://www.cnblogs.com/caodneg7/p/10071230.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/352002.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

opencv连续读图

1.功能利用opencv连续读取指定文件夹中连续命名的图像&#xff0c;可以根据需要设置图像的命名间隔和图像的个数。 2.代码 #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> int main(int …

在要求输入数字处找到非数字字符_剑指 Offer 67. 把字符串转换成整数 leetcode 剑指offer系列...

点击专辑上方“蓝字”关注我吧题目难度: 中等原题链接[1]今天继续更新剑指 offer 系列, 老样子晚上 6 点 45 分准时更新公众号 每日精选算法题, 大家记得关注哦~ 另外在公众号里回复 offer 就能看到剑指 offer 系列当前连载的所有文章了题目描述写一个函数 StrToInt&#xff0c…

旅行商问题的n种解法

问题描述&#xff1a; 旅行商问题&#xff08;Traveling Salesman Problem,TSP&#xff09;是旅行商要到若干个城市旅行&#xff0c;各城市之间的费用是已知的&#xff0c;为了节省费用&#xff0c;旅行商决定从所在城市出发&#xff0c;到每个城市旅行一次后返回初始城市&…

将字符串中的指定字符全局替换

// 将 str 中的 a 替换为 Avar str abcabcabc;var result str.replace(a, A);console.log(result: result); // 输出 result:Abcabcabc // 将str 中所有的 a 替换为 Avar str abcabcabc;var result str.replace(/a/g, A);console.log(result: result); // 输出 result:…

Lintcode--5(37)--反转一个三位数

1、题目反转一个只有3位数的整数。123 反转之后是 321。900 反转之后是 9。 2、我的解答 class Solution { public:/*** param number: A 3-digit number.* return: Reversed number.*/int reverseInteger(int number) {int num[3] {0};int result;num[1] number/100;num[2] …

java未检查异常_Java中已检查和未检查的异常

java未检查异常Java有两种类型的异常-已检查和未检查。 简而言之&#xff0c;选中的是指开发人员可以从异常中合理恢复的情况&#xff0c;而未选中的异常是无法处理的编程错误。 本文介绍了何时使用哪种。 但这不是那么简单–受检查的异常使代码变得“丑陋”。 它们迫使开发人员…

python清空列表clear_如何在Python中清空列表?

似乎很“肮脏”以这种方式清空列表&#xff1a;while len(alist) > 0 : alist.pop()是否存在明确的方法&#xff1f;#1楼list []将list重置为空列表。请注意&#xff0c;通常您不应list_保留的函数名称&#xff0c;例如list &#xff0c;它是列表对象的构造函数-例如&#…

linux shell 自定义函数(定义、返回值、变量作用域)介绍

linux shell 可以用户定义函数&#xff0c;然后在shell脚本中可以随便调用。下面说说它的定义方法&#xff0c;以及调用需要注意那些事项。 一、定义shell函数(define function) 语法&#xff1a; [ function ] funname [()] { action; [return int;] } 说明&#xff1a; …

Lintcode--6(767)--翻转数组

1、题目描述原地反转给定的数组&#xff0c;原地意味着你不能使用额外的空间。 2、AC程序 &#xff08;1&#xff09;利用C自带的函数 class Solution { public:void reverseArray(vector<int> &nums) {reverse(nums.begin(),nums.end());} }; &#xff08;2&#xf…

CPU时间分片、多线程、并发和并行

1、CPU时间分片、多线程&#xff1f; 如果线程数不多于CPU核心数&#xff0c;会把各个线程都分配一个核心&#xff0c;不需分片&#xff0c;而当线程数多于CPU核心数时才会分片。 2、并发和并行的区别 并发&#xff1a;当有多个线程在操作时,如果系统只有一个CPU,把CPU运行时间…

如何在Java中实现线程池

线程是独立程序的执行路径。 在java中&#xff0c;每个线程都扩展java.lang.Thread类或实现java.lang.Runnable。 多线程是指在一个任务中同时执行两个或多个线程。在多线程中&#xff0c;每个任务可以具有多个线程&#xff0c;并且这些线程可以异步或同步地并行运行。 您可以…

html选择按键点击后锁死输入框_js实现的键盘开启大写锁定提示和密码显示与隐藏的效果...

不知道大家注意到没有&#xff0c;很多人性话的网站再输入密码的时候&#xff0c;如果开启大写锁定下过(切换键A左边的Cap Lock按键)&#xff0c;那么就会给出一个提示&#xff0c;因为很多时候密码验证是区分大小写的&#xff0c;如果不小心开启或者关闭大小写就有可能导致输入…

vim ctags使用方法

windows下很多人都使用source insight 编写和查看代码。linux下可以使用VIM&#xff0c;刚开始会觉得VIM像windows下的记事本&#xff0c;而如果使用得当&#xff0c;它并不比source insight 逊色。在这里&#xff0c;我会尽我所能细致地讲清楚如何把vim变成source insight, 然…

MATLAB读取txt文件的数据

常用的主要有以下几种方法&#xff1a; 1、loadData load("filename.txt");该函数只能加载仅含有数字的文本文件&#xff0c;如果文档中夹杂着字母或者文字&#xff0c;就会报错。 2、importdataData importdata("filename.txt");既可以读取数据又可以读…

谷歌guava_Google Guava v07范例

谷歌guava我们在TouK举办了一个名为“每周技术研讨会”的活动&#xff0c;即每个星期五的16:00&#xff0c;每个愿意参加的人都有一个演讲。 我们展示了我们在家学习和学习的东西&#xff0c;但是我们还设有一个公告板&#xff0c;上面有人们想听的话题。 上周MaciejPrchniak谈…

arduinoesp8266定时器_ESP8266深度睡眠与Arduino IDE(NodeMCU)

本指南展示了如何使用Arduino IDE与ESP8266(NodeMCU)一起使用深度睡眠。我们将使用定时器唤醒来唤醒深度睡眠&#xff0c;并使用复位(RST)引脚来唤醒外部唤醒。引入深度睡眠模式如果您使用电池供电的ESP8266板制作了一个项目&#xff0c;或者只是将ESP8266 NodeMCU板连接到了移…

MATLAB对图片格式批量转换

从网上下载一些数据集&#xff0c;发现是PPM或者PGM格式的&#xff0c;一般照片查看器打不开。可以用MATLAB对其进行批量转换格式。当然&#xff0c;任何两种格式之间相互转换都可以用这个程序&#xff1a;% 本示例程序将 pgm 图片转换为 jpg 图片 % 如果仅对一张 pgm 图片作…

gunicorn部署Flask服务

作为一个Python选手&#xff0c;工作中需要的一些服务接口一般会用Flask来开发。 Flask非常容易上手&#xff0c;它自带的app.run(host"0.0.0.0", port7001)用来调试非常方便&#xff0c;但是用于生产环境无论是处理高并发还是鲁棒性都有所欠缺&#xff0c;一般会配合…

linux shell 中判断字符串为空的正确方法

help命令可以查看帮助 help test 正确做法&#xff1a; #!/bin/sh STRING if [ -z "$STRING" ]; then echo "STRING is empty" fi if [ -n "$STRING" ]; then echo "STRING is not empty" fi rootjames-desktop:~#…

打开wmware没反应_没呼吸没脉搏,溺水女孩危在旦夕!预产期只差9天的她挺着大肚子出手相助...

8月9日晚上8点半南海桂城中海锦城小区游泳池一位小女孩溺水了&#xff01;脸色青紫、嘴唇发绀没有呼吸也没有脉搏情况非常不妙&#xff01;↓↓↓救生员立马给女孩做心肺复苏。站在泳池边陪女儿才游不到200米的南海医院妇科医生胡碧洪&#xff0c;听见泳池边的骚动&#xff0c;…