linux 命令行多线程下载工具
主要介绍我用过的两款:
Wget
Wget是一个十分常用命令行下载工具,多数Linux发行版本都默认包含这个工具。如果没有安装可在http://www.gnu.org/software/wget/wget.html下载最新版本,并使用如下命令编译安装:
#tar zxvf wget-1.9.1.tar.gz #cd wget-1.9.1 #./configure #make #make install
它的用法很简单,Wget使用格式如下:
#wget[选项][下载地址]1.Wget常用参数
◆-b:后台下载,Wget默认的是把文件下载到当前目录。
◆-O:将文件下载到指定的目录中。
◆-P:保存文件之前先创建指定名称的目录。
◆-t:尝试连接次数,当Wget无法与服务器建立连接时,尝试连接多少次。
◆-c:断点续传,如果下载中断,那么连接恢复时会从上次断点开始下载。
除了上述常用功能,Wget还支持HTTP和FTP代理功能,编辑其配置文件“/etc/wgetrc”即可。
具体方法是使用VI编辑器打开上述文件,将“http_proxy”和“ftp_proxoy”前的#去掉,然后在这两项后输入相应的代理服务器的地址,保存退出即可。
此外,Wget还可下载整个网站,如下载http://man.chinaunix.net整个Man手册中心。
只需输入如下命令即可:
#wget-r-p-np-khttp://man.chinaunix.net其中
◆–r参数是指使用递归下载,
◆-p是指下载所有显示完整网页所以需要的文件,如图片等,
◆–np是指不搜索上层目录,
◆–k则是指将绝对链接转换为相对链接。
wget的用法:
wget的用法
下载用法如下:
wget-chttp://dl_dir.qq.com/qqfile/qq/QQ2010/QQ2010SP1.exe
-c,--continue接着下载没下载完的文件
如何停止下载:
ctrl+c或着
psaux|grepwget得到正在运行的wget线程列表,得到线程id
kill-9numberofprocesshere(这个就是得到的线程id)
或着
pgrepwget|xargskill-9
MyGet可以多线程
MyGet目标设计成一个可扩展的,拥有丰富界面的多线程下载工具,它支持HTTP、FTP、HTTPS等协议。
在http://myget.sourceforge.net/release/myget-0.1.0.tar.bz2下载其最新版本0.1.0,
下载后使用如下命令安装:
#tarjxvfmyget-0.1.0.tar.bz2
#cdmyget-0.1.0
#./configure
#make
#makeinstall
MyGet命令格式如下:#mytget[选项][下载地址]
常用的选项:
-d[目录]:指定下载到的文件在本地存放的位置,默认当前目录。
-f[文件]:指定下载到本地后的新文件名称。
-h帮助选项。
-n[线程数]:下载线程数量,默认为4个。
-x[代理服务器地址]:设置代理服务器地址,如“-xhttp://user:pass@host:port”。
-bShowthedebugmessage
-cSettheretrycountto[num],nolimitwhen"0",thedefaultis"99"
-iSettheftpretryintervalto[num]seconds,thedefaultis"5"
-rInclude`Referer:'headerinHTTPrequest.
-tSettheconnectiontimeoutto[num]seconds,thedefaultis"30"
-vShowtheversionofthemygetandexit
-xSettheproxy[URL]
myget例子:开10个线程,保存在当前的文件夹下
mytget-n10http://dl_dir.qq.com/qqfile/qq/QQ2010/QQ2010SP1.exe
杀死进程的办法和上面的wget一样。
Linux多线程下载工具myget,替换单线程wget
官网:http://myget.sourceforge.net/
安装很方便,
wgethttp://myget.sourceforge.net/release/myget-0.1.2.tar.gz
解压
tarzxvfmyget-0.1.2.tar.gz
进入目录
cdmyget
然后编译安装
./configure
make&&makeinstall
输入mytget–help查看帮助
注意命令是mytget而不是myget