linux下wget的用法

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

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

转载于:https://my.oschina.net/zhenguoguan/blog/138631

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

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

相关文章

【传智播客】Libevent学习笔记(三):事件循环

目录 00. 目录01. event_base_loop函数02. event_base_dispatch函数03. event_base_loopexit函数04. event_base_loopbreak函数05. event_base_got_exit函数06. event_base_got_break函数07. event_base_dump_events函数08. event_base_dump_events函数09. 废弃的事件循环函数1…

Android的MVC框架

http://www.cnblogs.com/wanghafan/archive/2012/07/20/2600786.html MVC是当前比较流行的框架,随便Google下,就可以发现几乎所有的应用程序开发中都采用了MVC框架,例如:.NET,Java Spring,Java Struts&…

DVWA-SQL注入

SQL注入解题思路 寻找注入点,可以通过web扫描工具实现通过注入点,尝试得到连接数据库的用户名,数据库名称,权限等信息。猜解关键数据库表极其重要字段与内容。通过获得的用户信息寻找后台进行登录。利用后台上传webshell或一句话木…

easyui验证:validatebox

2019独角兽企业重金招聘Python工程师标准>>> $.extend($.fn.validatebox.defaults.rules, { eqTrim : {/* 填写名字前面不能有空格! */ validator : function(value,param) { var reg new RegExp(param); var falg!reg.test(value); return falg; }, me…

秒懂机器学习---当机器学习遇上决策树....

秒懂机器学习---当机器学习遇上决策树.... 一、总结 一句话总结: 多多看图,图的直观效果很好,很多时候文字实在表达不清 1、决策树(Decision Tree)中的各个节点表示什么意思? 每一个树节点表示一个属性上的…

Linux系统目录结构及主要内容

为什么80%的码农都做不了架构师?>>> 文件结构 : /:根目录,所有的目录、文件、设备都在/之下,/就是Linux文件系统的组织者,也是最上级的领导者。 /bin: bin 就是二进制(b…

学习《深度学习入门:基于Python的理论与实现》高清中文版PDF+源代码

入门神经网络深度学习,推荐学习《深度学习入门:基于Python的理论与实现》,这本书不来虚的,一上来就是手把手教你一步步搭建出一个神经网络,还能把每一步的出处讲明白。理解神经网络,很容易就能入门。 深度学…

学习《PythonWeb开发实战(董伟明)》中文PDF+源代码

python可以用了进行数据分析,也可以进行Web开发,一般会使用django或者flask等进行开发。 国内介绍python web的书有写的不错的,推荐看看《PythonWeb开发实战》 他的定位是进阶读者,介绍了Python web的生态,有些包介绍得…

周鸿祎:在360新员工入职培训上的讲话

这个是周鸿祎给入司360新员工的一段话,不但适合360,也适合所有的公司员工。特此分享。我想给新入职的同事讲一讲我的期望,再提几个建议。我这个人喜欢说真话,不喜欢说漂亮话,因为漂亮话没用。但说真话,大家…

使用面向对象技术创建高级 Web 应用程序

作者: 出处: 使用面向对象技术创建高级 Web 应用程序 来源:开源中国社区 作者:oschina最近,我面试了一位具有5年Web应用开发经验的软件开发人员。她有4年半的JavaScript编程经验,自认为自己具有非常优秀的JavaScript技能&#xff…

DevExpress控件使用经验总结

DevExpress控件使用经验总结 DevExpress是一个比较有名的界面控件套件,提供了一系列的界面控件套件的DotNet界面控件。本文主要介绍我在使用DevExpress控件过程中,遇到或者发现的一些问题解决方案,或者也可以所示一些小的经验总结。总体来讲&…

第二阶段团队绩效评分

第二阶段评分结果: 转载于:https://www.cnblogs.com/xczd/p/11068692.html

随堂小测冲刺.第19天

我们小组的logo出来的,太酷了,不符合我的审美,本人表示无法接受。。。 还要谢谢李泽宇的女盆友,O(∩_∩)O哈哈~ 转载于:https://www.cnblogs.com/daisy99lijing/p/11024465.html

MSBuild编译扩展

新增一个C#工程&#xff0c;用记事本打开工程文件&#xff08;.csproj结尾&#xff09;&#xff0c;滚动条拉到最后&#xff0c;大家可以看到一段如下的代码&#xff0c;其中<Target Name"BeforeBuild">和<Target Name"AfterBuild">大家根据名…

修改2440里面的FriendlyARM

修改2440里面的FriendlyARM 在/etc/init.d文件夹里面有一个rcS文件&#xff0c;修改/bin/hostname FriendlyARM中的FriendlyARM即可 比如修改为/bin/hostname Solar posted on 2011-12-07 17:22 Neddy11 阅读(...) 评论(...) 编辑 收藏 转载于:https://www.cnblogs.com/Neddy…

vs2008 下编译jrtplib-3.9.0成功

网址:http://blog.csdn.net/jid_223/article/details/6858663 jrtplib-3.9.0的编译&#xff0c;终于搞通了。网上搜集了很多资料&#xff0c;自己也调试了很久。 首先&#xff0c;jrtplib-3.9.0是什么不用多说吧&#xff0c;它是一个很牛的老外用C写的一个开源的RTP协议库&…

Eclipse安装VJET报错解决办法

2019独角兽企业重金招聘Python工程师标准>>> Eclipse在安装JS编辑器插件VJET时可能会出现以下错误 Cannot complete the install because one or more required items could not be found. Software being installed: VJET Java Based Dom Kit (Incubation) 0.10.0…

罐头瓶里面的电能表

生活中我们经常见到数字电能表&#xff0c;只不过下面这个是装在罐头里面的电能表&#xff0c; 此想法来自EnterJar&#xff0c;&#xff0c; 怎么样&#xff1f;直接把用电器接上就可以测出电子产品的电能状况&#xff0c;很方便把&#xff01; &#xff0c;原理很简单&#x…

面向对象编程从骨子里就有问题——看看名人大家是如何吐槽面向对象的

2019独角兽企业重金招聘Python工程师标准>>> 本文由“外刊IT评论”网(www.aqee.net)荣誉出品 “面向对象编程是一个极其糟糕的主意&#xff0c;只有硅谷里的人能干出这种事情。” — Edsger Dijkstra(图灵奖获得者) “面向对象设计是用罗马数字做计算。” — Ro…

花了两个星期,我终于把 WSGI 整明白了

在 三百六十行&#xff0c;行行转 IT 的现状下&#xff0c;很多来自各行各业的同学&#xff0c;都选择 Python 这门胶水语言做为踏入互联网大门的第一块敲门砖&#xff0c;在这些人里&#xff0c;又有相当大比例的同学选择了 Web 开发这个方向&#xff08;包括我&#xff09;。…