Linux wget是一个下载文件的工具,它用在命令行下。对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器。如果我们使用虚拟主机,处理这样的事务我们只能先从远程服务器下载到我们电脑磁盘,然后再用ftp工具上传到服务器。这样既浪费时间又浪费精力,那不没办法的事。而到了Linux VPS,它则可以直接下载到服务器而不用经过上传这一步。wget工具体积小但功能完善,它支持断点下载功能,同时支持FTP和HTTP下载方式,支持代理服务器和设置起来方便简单。下面我们以实例的形式说明怎么使用wget。

1、使用wget下载单个文件

以下的例子是从网络下载一个文件并保存在当前目录

wget http://cn.wordpress.org/wordpress-3.1-zh_CN.zip

在下载的过程中会显示进度条,包含(下载完成百分比,已经下载的字节,当前下载速度,剩余下载时间)。

2、使用wget -O下载并以不同的文件名保存 

wget默认会以最后一个符合”/”的后面的字符来命令,对于动态链接的下载通常文件名会不正确。 
错误:下面的例子会下载一个文件并以名称download.php?id=1080保存

wget http://www.centos.bz/download?id=1 
即使下载的文件是zip格式,它仍然以download.php?id=1080命令。 
正确:为了解决这个问题,我们可以使用参数-O来指定一个文件名:

wget -O wordpress.zip http://www.centos.bz/download.php?id=1080

3、使用wget –limit -rate限速下载 
当你执行wget的时候,它默认会占用全部可能的宽带下载。但是当你准备下载一个大文件,而你还需要下载其它文件时就有必要限速了。

wget –limit-rate=300k http://cn.wordpress.org/wordpress-3.1-zh_CN.zip

4、使用wget -c断点续传 
使用wget -c重新启动下载中断的文件:

wget -c http://cn.wordpress.org/wordpress-3.1-zh_CN.zip 
对于我们下载大文件时突然由于网络等原因中断非常有帮助,我们可以继续接着下载而不是重新下载一个文件。需要继续中断的下载时可以使用-c参数。

5、使用wget -b后台下载 
对于下载非常大的文件的时候,我们可以使用参数-b进行后台下载。

wget -b http://cn.wordpress.org/wordpress-3.1-zh_CN.zip 
Continuing in background, pid 1840. 
Output will be written to `wget-log’. 
你可以使用以下命令来察看下载进度

tail -f wget-log

6、伪装代理名称下载 
有些网站能通过根据判断代理名称不是浏览器而拒绝你的下载请求。不过你可以通过–user-agent参数伪装。

wget –user-agent=”Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16″ 下载链接

7、使用wget –spider测试下载链接 
当你打算进行定时下载,你应该在预定时间测试下载链接是否有效。我们可以增加–spider参数进行检查。

wget –spider URL 
如果下载链接正确,将会显示

wget –spider URL 
Spider mode enabled. Check if remote file exists. 
HTTP request sent, awaiting response… 200 OK 
Length: unspecified [text/html] 
Remote file exists and could contain further links, 
but recursion is disabled — not retrieving. 
这保证了下载能在预定的时间进行,但当你给错了一个链接,将会显示如下错误

wget –spider url 
Spider mode enabled. Check if remote file exists. 
HTTP request sent, awaiting response… 404 Not Found 
Remote file does not exist — broken link!!! 
你可以在以下几种情况下使用spider参数:

定时下载之前进行检查 
间隔检测网站是否可用 
检查网站页面的死链接

8、使用wget –tries增加重试次数 
如果网络有问题或下载一个大文件也有可能失败。wget默认重试20次连接下载文件。如果需要,你可以使用–tries增加重试次数。

wget –tries=40 URL

9、使用wget -i下载多个文件 
首先,保存一份下载链接文件

cat > filelist.txt 
url1 
url2 
url3 
url4 
接着使用这个文件和参数-i下载

wget -i filelist.txt

10、使用wget –mirror镜像网站 
下面的例子是下载整个网站到本地。

wget –mirror -p –convert-links -P ./LOCAL URL 
–miror:开户镜像下载 
-p:下载所有为了html页面显示正常的文件 
–convert-links:下载后,转换成本地的链接 
-P ./LOCAL:保存所有文件和目录到本地指定目录

11、使用wget –reject过滤指定格式下载 
你想下载一个网站,但你不希望下载图片,你可以使用以下命令。

wget –reject=gif url

12、使用wget -o把下载信息存入日志文件 
你不希望下载信息直接显示在终端而是在一个日志文件,可以使用以下命令:

wget -o download.log URL

13、使用wget -Q限制总下载文件大小 
当你想要下载的文件超过5M而退出下载,你可以使用以下命令:

wget -Q5m -i filelist.txt 
注意:这个参数对单个文件下载不起作用,只能递归下载时才有效。

14、使用wget -r -A下载指定格式文件 
可以在以下情况使用该功能

下载一个网站的所有图片 
下载一个网站的所有视频 
下载一个网站的所有PDF文件 
wget -r -A.pdf url

15、使用wget FTP下载 
你可以使用wget来完成ftp链接的下载。 
使用wget匿名ftp下载

wget ftp-url

使用wget用户名和密码认证的ftp下载

wget –ftp-user=USERNAME –ftp-password=PASSWORD url

linux命令(49):wget命令的更多相关文章

  1. Linux学习之wget命令

    Linux系统中的wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器.wget支持HTTP,HTTPS和FTP协 ...

  2. 【转载】LINUX下安装wget命令(SFTP实现法)

    如何安装wget命令. 方法一:通过yum 命令行为:yum install wget 完成.此操作很简单,但是我安装的linux是centos的最小版本,运行上述命令时会出现无法连接到源网站(大概是 ...

  3. Linux中的wget命令

    Linux系统中的wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器.wget支持HTTP,HTTPS和FTP协 ...

  4. Linux学习(二) wget命令的使用

    近期在Linux下进行一些操作,在非常多地方都用到了wget这个命令,记录一下一些有关wget的使用方法: wget是在Linux下开发的开放源码的软件,作者是Hrvoje Niksic,后来被移植到 ...

  5. linux常用命令:wget 命令

    wget命令用来从指定的URL下载文件.wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕.如果是服务器打断下 ...

  6. Curl命令、Elinks命令、lynx命令、Wget命令、lftp命令

    一.Curl命令 语法 curl(选项)(参数) 选项 -a/--append 上传文件时,附加到目标文件 -A/--user-agent <string> 设置用户代理发送给服务器 -a ...

  7. Linux系统下wget命令的使用教程

    一.Linux wget简介 wget是linux上的命令行的下载工具.这是一个GPL许可证下的自由软件.Linux wget支持HTTP和FTP协议,支持代理服务器和断点续传功能,能够自动递归远程主 ...

  8. linux应用之wget命令详解

    wget是linux最常用的下载命令, 一般的使用方法是: wget + 空格 + 要下载文件的url路径 例如: # wget linuxsense.org/xxxx/xxx.tar.gz" ...

  9. Linux命令学习-wget命令

    Linux系统中的wget是一个下载文件的工具,它用在命令行下,通过它可以方便的下载文件. 我们以百度的logo图片链接地址为例:https://www.baidu.com/img/bd_logo.p ...

  10. 每天一个linux命令(49)--diff命令

    diff 命令是 Linux 上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方.diff 在命令行中打印每一个行的改动.最新版本的diff还支持二进制文件,diff ...

随机推荐

  1. BZOJ1997:[HNOI2010]PLANAR——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=1997 https://www.luogu.org/problemnew/show/P3209 若能 ...

  2. MySQL中数据表的基本操纵

    本文基于对国家863中部软件孵化器编著的<MySQL从入门到精通>一书的操作实践.  一.创建数据表 数据表属于数据库,在创建数据表之前,应该使用语句 USE 数据库名  指定操作是在那个 ...

  3. ZOJ3874 Permutation Graph 【分治NTT】

    题目链接 ZOJ3874 题意简述: 在一个序列中,两点间如果有边,当且仅当两点为逆序对 给定一个序列的联通情况,求方案数对\(786433\)取模 题解 自己弄了一个晚上终于弄出来了 首先\(yy\ ...

  4. 基于jquery的扩展写法

    (function($){ $.fn.aa = function(canshu){ html = $(this).text(); alert(html) }})(jQuery); (function( ...

  5. win10下ndk编译arm可执行体

    编译参考文章 http://blog.csdn.net/john_1984/article/details/12622215 一.编写soLoader主文件 soLoader.c内容: #includ ...

  6. navicat for mysql无法连接数据库和连接数据库慢的问题

    首先在自己虚拟机上登录mysql: mysql -uroot -p 然后赋予权限 GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY '1234 ...

  7. Blender绘制大脑表层,并高亮染色

    首先, 有必要熟悉一下Blender的一些快捷键.(实在不想吐槽Blender反人类的交互操作了) 按鼠标右键是选择某个物体.(是右键,而不是左键!) 按A键,取消选中或者选中全部物体. 按H键,隐藏 ...

  8. [codeforces/edu30]总结(E)

    链接:http://codeforces.com/contest/873/ A题: 贪心,把最大的k个数变成x即可. B题: 从左向右枚举右端点,维护balance的最长长度.任意一个子串可以看做两个 ...

  9. UVA 11922 Splay tree

    UVA 11922 题意: 有n个数1~n 操作a,b表示取出第a~b个数,翻转后添加到数列的尾部 输入n,m 输入m条指令a,b 输出最终的序列 代码: #include<iostream&g ...

  10. Android SearchView设置与用法的那点事儿

    // 设置该SearchView默认是否自动缩小为图标 mSearchView.setIconifiedByDefault(false); // 为该SearchView组件设置事件监听器 mSear ...