一.axel 支持续下载多线程
Axel,是 Linux 下一款不错的 HTTP 或 FTP 高速下载工具。支持多线程下载、断点续传,且可以从多个地址或者从一个地址的多个连接来下载同一个文件,适合网速不给力时多线程下载以提高下载速度。需要注意的是,该软件只有命令行界面。
也可以根据自己系统版本去官网下:http://pkgs.repoforge.org/axel/,
2,安装:
1)yum安装:
- #wget -c http://pkgs.repoforge.org/axel/axel-2.4-1.el6.rf.x86_64.rpm
- #rpm -ivh axel-2.4-1.el6.rf.x86_64.rpm
2)源码安装
- [root@local local] tar xzf axel-2.4.tar.gz
- [root@local axel-2.4]# ./configure --script=0
- [root@local axel-2.4]#make
- [root@local axel-2.4]# cp axel /bin/ 复制到bin
- [root@local /]# axel -n 3 -o /root http://192.168.1.1/ CentOS-5.11-i386-bin-DVD-1of2.iso测试下载
3,常用参数:
-n 指定线程数
-o 指定另存为目录
-s 指定每秒的最大比特数
-q 静默模式
更多参数请#axel --help
二.Aria2下载工具
Aria2是一个命令行下运行、多协议、多来源下载工具(HTTP/HTTPS、FTP、BitTorrent、Metalink),内建 XML-RPC 用户界面.轻量,平均4-9MB内存使用量,BitTorrent下载速度2.8MiB/s时CPU占用约6%。 全面的BitTorrent特性支持,包括 DHT, PEX, Encryption, Magnet URI, Web-Seeding,选择下载,本地资源探测。 Mtalink支持。包括File verification, HTTP/FTP/BitTorrent integration and Configuration for language, location, OS, 之类。
1,下载地址:http://pkgs.repoforge.org/aria2/
- #wget -c http://pkgs.repoforge.org/aria2/aria2-1.16.4-1.el6.rf.x86_64.rpm
- #rpm -ivh aria2-1.16.4-1.el6.rf.x86_64.rpm
在安装过程有可能会出现缺少 libnettle.so.4 的错误提示。
2,CentOS 6.x 64 位下安装
- #wget -c http://pkgs.repoforge.org/nettle/nettle-2.2-1.el6.rf.x86_64.rpm
- #wget -c http://pkgs.repoforge.org/nettle/nettle-devel-2.2-1.el6.rf.x86_64.rpm
- #rpm -ivh nettle-2.2-1.el6.rf.x86_64.rpm
- #rpm -ivh nettle-devel-2.2-1.el6.rf.x86_64.rpm
3,用法:
直接
# aria2c http://example.org/mylinux.iso
从两个来源(更多也可以)
# aria2c http://a/f.iso ftp://b/f.iso
BitTorrent
#aria2c http://example.org/mylinux.torrent
BitTorrent Magnet URI
#aria2c 'magnet:?xt=urn:btih:248D0A1CD08284299DE78D5C1ED359BB46717D8C'
Metalink
# aria2c http://example.org/mylinux.metalink
文本文件uri.text中的链接(URI)
# aria2c -i uri.txt
显示种子中包含了哪些文件
# aria2c -S bit.torrent
选择仅下载种子中编号为1,4,7的文件 $ aria2c --select-file 1,4,7 bit.terrent
aria2还有web ui工具:具体参考https://github.com/ziahamza/webui-aria2
三.curl文件传输工具
它的参数众多,此处例句几个常用的参数:
常用参数如下:
-c,--cookie-jar:将cookie写入到文件
-b,--cookie:从文件中读取cookie
-C,--continue-at:断点续传
-d,--data:http post方式传送数据
-D,--dump-header:把header信息写入到文件
-F,--from:模拟http表达提交数据
-s,--slient:减少输出信息
-o,--output:将信息输出到文件
-O,--remote-name:按照服务器上的文件名,存在本地
--l,--head:仅返回头部信息
-u,--user[user:pass]:设置http认证用户和密码
-T,--upload-file:上传文件
-e,--referer:指定引用地址
-x,--proxy:指定代理服务器地址和端口
-w,--write-out:输出指定格式内容
--retry:重试次数
--connect-timeout:指定尝试连接的最大时间/s
案例:
1,抓取指定页面的文件,若乱码可以使用iconv转码
- # curl -o qq.html www.qq.comcurl
- # curl -s -o qq.html www.qq.com | iconv -f utf-8
2,伪装浏览器头(user-agent)
# curl -A "Mozilla/3.0 (compatible;msie 6.0;windows NT5.0)" www.qq.com
3,获取http的相应头header
- # curl -I www.qq.com
- # curl -D ./header.txt www.qq.com 将headers保存到文件中
更多参数请#curl --help
四.wget文件下载工具
1,启动参数:
-V:--version 显示版本号
-h: --help显示帮助
-b:--background启动后转入后台执行
2,日志记录和输入文件参数
-o:--output-file-file把记录写到file文件中
-a:--apped-output=file把记录追加到file文件中
-i:--input-file=file从file读取url来下载
3,下载参数:
-bind-address=address:指定本地使用的地址
-t:-tries=munber设置最大尝试连接次数
-c:-continue接着下载没有 下载完的文件
-O:-output-document=file将下载的文件写入到file中
-spider:不下载文件
-T:-timeout=sec 设置相应超时时间
-w:-wait=sec 两次尝试之间间隔时间
--limit-rate=rate:显示下载速率
-progress=type:设置进度条
4,目录参数:
-P:--directory-prefix=prefix将文件保存到指定目录
5,http参数
--http-user=user 设置用户
--http-passwd=pass设置密码
-U:--user-agnet=agent 伪装代理
-no-http-keep-alive:关闭http活动链接,变成永久链接
--cookie=off 不实用cookie
-load-cookie-file:在开始回话前从file文件加载cookie
-save-cookies=file:在会话结束后将cookie保存到file文件
6,ftp参数
-passive-ftp:默认值,使用被动模式
-active-ftp:使用主动模式
7,递归下载排除参数
-A:--accept=list分号分割被下载扩展的列表
-R:--reject=list 分号分割不被下载扩展的列表
-D:--domains=list 分号分割被下载域的列表
--exclude-domains=list:分号分割不被下载域的列表
案例:
1)下载单个文件到当前目录,也可以-P指定到下载目录
# wget http://pkgs.repoforge.org/aria2/aria2-1.16.4-1.el6.rf.x86_64.rpm
2)对于网络不稳定的用户可以使用-c和--tries参数,保证下载完成
# wget -c --tries=20 http://pkgs.repoforge.org/aria2/aria2-1.16.4-1.el6.rf.x86_64.rpm
3)下载大文件时候,可以让后台下载,这时候会生成wget-log文件保存下载进度
# wget -b http://pkgs.repoforge.org/aria2/aria2-1.16.4-1.el6.rf.x86_64.rpm
4)可以利用-spider参数判断网址是否有效
# wget --spider http://pkgs.repoforge.org/aria2/aria2-1.16.4-1.el6.rf.x86_64.rpm
5)自动从多个链接下载文件
首先创建一个url文件:
#more url.txt
http://pkgs.repoforge.org/nettle/nettle-2.2-1.el6.rf.x86_64.rpm http://pkgs.repoforge.org/nettle/nettle-devel-2.2-1.el6.rf.x86_64.rpm
#wget -I url.txt
6)限制下载速度
#wget --limit-rate=1m http://pkgs.repoforge.org/aria2/aria2-1.16.4-1.el6.rf.x86_64.rpm
7)登录ftp下载
- #wget --ftp-user=user --ftp-password=pass
- ftp://pkgs.repoforge.org/aria2/aria2-1.16.4-1.el6.rf.x86_64.rpm
部分转自:http://lizhenliang.blog.51cto.com/7876557/1650663
本文永久链接:未经允许不得转载》http://www.mrliangqi.com/564.html