- 论坛徽章:
- 0
|
本帖最后由 duanjigang 于 2011-09-26 11:51 编辑
先发第一篇,呵呵,从简单的axel开始
首先看下axel的用法介绍:- usr/local/axel/bin/axel
- Usage: axel [options] url1 [url2] [url...]
- --max-speed=x -s x Specify maximum speed (bytes per second)
- --num-connections=x -n x Specify maximum number of connections
- --output=f -o f Specify local output file
- --search[=x] -S [x] Search for mirrors and download from x servers
- --header=x -H x Add header string
- --user-agent=x -U x Set user agent
- --no-proxy -N Just don't use any proxy server
- --quiet -q Leave stdout alone
- --verbose -v More status information
- --alternate -a Alternate progress indicator
- --help -h This information
- --version -V Version information
复制代码 可以看到axel需要至少一个URL地址作为参数来提供下载地址,比如最简单的一个下载mysql-server的例子:
- usr/local/axel/bin/axel http://ftp.iij.ad.jp/pub/db/mysql/Downloads/MySQL-5.5/MySQL-5.5.16-1.linux2.6.x86_64.tar
复制代码 回车,axel便会开始下载
http://ftp.iij.ad.jp/pub/db/mysq ... linux2.6.x86_64.tar
这个文件.
看看其它参数的意思:
-s 限制下载最大速度 bytes/秒
-n 设置下载连接数,比如 -n 10 最大开启10个下载连接(这里是连接数,不是线程数)
-o 下载后,在本地的存储文件名称
-S 查找该文件的镜像服务器(关于如何查找,后面会谈到) 如果输入x的话,会从前x个镜像服务器去下载,排名按照下载速度从大到小取前top x个.
-H 增加头信息,自持多个header信息, 比如 -H header1 -H header2 ..等
-U 设置用户代理,比如系统默认的代理信息 -U Axel 2.4 (Linux)
-N 不使用任何http代理
-q 仅仅保留标准输出
-v 输出更多的状态信息
-a 输出交替的进度条
-h 打印这个帮助信息
-V 打印版本信息
关于命令行参数的解析,在text.c的main函数中(大概92行左右)中能看到. |
|