日期:2014-05-16  浏览次数:20694 次

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 -k http://man.chinaunix.net 其中
◆–r参数是指使用递归下载,
◆-p是指下载所有显示完整网页所以需要的文件,如图片等,
◆–np是指不搜索上层目录,
◆–k则是指将绝对链接转换为相对链接。

wget的用法:

wget的用法
下载用法如下:
wget -c  http://dl_dir.qq.com/qqfile/qq/QQ2010/QQ2010SP1.exe
-c, --continue 接着下载没下载完的文件
如何停止下载:
ctrl+c或着
ps aux |grep wget 得到正在运行的wget线程列表,得到线程id
kill -9 numberofprocesshere(这个就是得到的线程id)
或着
pgrep wget|xargs kill -9

MyGet可以多线程
MyGet目标设计成一个可扩展的,拥有丰富界面的多线程下载工具,它支持HTTP、FTP、HTTPS等协议。
  在http://myget.sourceforge.net/release/myget-0.1.0.tar.bz2下载其最新版本0.1.0,
 
  下载后使用如下命令安装:
   #tar jxvf myget-0.1.0.tar.bz2
   #cd myget-0.1.0
   #./configure
   #make
   #make install
   MyGet命令格式如下: #mytget [选项] [下载地址]
   常用的选项:
   -d  [目录]:指定下载到的文件在本地存放的位置,默认当前目录。
   -f  [文件]:指定下载到本地后的新文件名称。
   -h  帮助选项。
   -n  [线程数]:下载线程数量,默认为4个。
   -x  [代理服务器地址]:设置代理服务器地址,如“-x http://user:pass@host:port”。
   -b  Show the debug message
   -c  Set the retry count to [num], no limit when "0", the default is "99"
   -i  Set the ftp retry interval to [num] seconds, the default is "5"
   -r  Include `Referer: ' header in HTTP request.
   -t  Set the connection timeout to [num] seconds, the default is "30"
   -v  Show the version of the myget and exit
   -x  Set the proxy [URL]

myget例子:开10个线程,保存在当前的文件夹下
mytget - n 10 http://dl_dir.qq.com/qqfile/qq/QQ2010/QQ2010SP1.exe

杀死进程的办法和上面的wget一样。

Linux多线程下载工具myget,替换单线程wget

官网:http://myget.sourceforge.net/

安装很方便,

wget http://myget.sourceforge.net/release/myget-0.1.2.tar.gz

解压

tar zxvf myget-0.1.2.tar.gz

进入目录

cd myget

然后编译安装

./configure
make && make install

输入mytget –help查看帮助

注意命令是mytget 而不是myget