当前位置:   article > 正文

比Wget、Curl更强大的下载工具!

比Wget、Curl更强大的下载工具!

你好,我是 EarlGrey,喜欢翻译点东西,偶尔写写代码。

点击下方卡片关注我,一起向上进击,提升自我。后台回复关键词“电子书”,送你一份我收藏的电子书合集。

 
 
 
 
 
 
作者:Escapehttps://www.escapelife.site/posts/7a3b6469.htmlaria2 是一款轻量且高效的命令行下载工具。堪称下载利器!

介绍说明

轻量、高效、命令行

aria2 是一款轻量且高效命令行下载工具,它提供了对多协议和多源地址的支持,并尝试将下载带宽利用率最大化,目前支持的协议包括HTTP(S)FTPBitTorrent(DHT, PEX, MSE/PE) 和 Metalink。通过 Metalink 的分块检查,aria2 可以在下载过程中自动的进行数据校验。

虽然现在有诸如 wget 和 curl 等其他类似产品,但 aria2 具有两个独特的功能,那就是可以并发的进行对多协议下载的支持和多个源地址的下载。这样用户将不必等待单个文件的下载完成,而且 aria2 会尽可能快的下载。

  1. # Ubuntu
  2. $ sudo apt-get install aria2
  3. # CentOS
  4. $ sudo yum install aria2

除 aria2 外,也有一些可以进行分片下载的工具,它们往往按照线程数分割文件,之后再并行下载。这就意味着,它们不会对未完成的部分进行自适应性重新分片。当整个流程工作正常时,这个策略是可行的;但一旦存在一个线程运行非常慢时,这样整个进程就需要等待该线程执行完成。而 aria2 就可以很好的处理这个情况,它将文件分割成 1M 大小的分片,当某个线程运行特别缓慢时,使用更快的线程来替换它进行下载。总之,aria2 是非常智能和可靠的。

当源地址存在诸如 & 或 * 等其他特殊字符时,请使用单引号或者双引号将 URL 包含起来。另外,如果你忘记了这些参数的全名或者含义,把 -h 放在选项或者词的前面,这样 aria2 就会搜索相关的选项并把他的帮助打印出来。

  1. ~ » aria2c -hconnection
  2. Usage: aria2c [OPTIONS] [URI | MAGNET | TORRENT_FILE | METALINK_FILE]...
  3. Printing options whose name includes 'connection'.
  4. Options:
  5.  -x, --max-connection-per-server=NUM The maximum number of connections to one
  6.                               server for each download.
  7.                               Possible Values: 1-16
  8.                               Default: 1
  9.                               Tags: #basic, #http, #ftp
  10.  --ftp-reuse-connection[=true|false] Reuse connection in FTP.
  11.                               Possible Values: truefalse
  12.                               Default: true
  13.                               Tags: #ftp
  14. Refer to man page for more information.

简单使用

官方文档地址:https://aria2.github.io/manual/en/html/index.html

下载单个文件
  1. $ aria2c "https://www.escapelife.site/"
  2. 02/18 15:40:03 [NOTICE] Downloading 1 item(s)
  3. [#e5cd7f 16KiB/46KiB(34%) CN:1 DL:17KiB ETA:1s]
  4. 02/18 15:40:06 [NOTICE] Download complete: /Users/escape/MissSun/py3neovim/index.html
  5. Download Results:
  6. gid   |stat|avg speed  |path/URI
  7. ======+====+===========+=======================================================
  8. e5cd7f|OK  |    26KiB/s|/Users/escape/MissSun/py3neovim/index.html
  9. Status Legend:
  10. (OK):download completed.
下载多个文件(-Z)
  1. $ aria2c -Z "https://www.escapelife.site/" "https://www.escapelife.site/"
  2. Download Results:
  3. gid   |stat|avg speed  |path/URI
  4. ======+====+===========+=======================================================
  5. 4d0d71|OK  |   128KiB/s|/Users/escape/MissSun/py3neovim/index.html
  6. ea8d19|OK  |    45KiB/s|/Users/escape/MissSun/py3neovim/index.1.html
扩展下载地址(-P)

bash

$ aria2c -Z -P "https://www.escapelife.site/image{1,2,3}_{A,B,C}.png"
指定文保存名称(-o)
$ aria2c -o index.html "https://www.escapelife.site/"
断电续传(-c)
$ aria2c -c "https://www.escapelife.site/"
分段下载(-x)
$ aria2c -x 8 "https://www.escapelife.site/"
设置下载文件的最大并行进程数(-s)
$ aria2c -s 8 "https://www.escapelife.site/"
设置下载项目的最大并行下载数(-j)
$ aria2c -Z -j 8 "https://www.escapelife.site/" "https://www.escapelife.site/"
从文件获取输入下载地址(-i)
$ aria2c -i download_movies_list.txt
下载到指定文件夹下(-d)
$ aria2c -d /home/escape "https://www.escapelife.site/"
下载速度限制(--max-download-limit)
$ aria2c --max-download-limit=500"https://www.escapelife.site/"

高级操作

参考文档地址:https://juejin.im/post/5b20006f5188257d831e3dd0

下载 BitTorrent 种子文件
$ aria2c "https://www.escapelife.site/Dragon.torrent"
下载 BitTorrent 磁力链接
$ aria2c "magnet:?xt=urn:btih:248D0A1CD082XXXXX8D5C717D8C"
列出磁力链地址的下载内容(-S)
$ aria2c -S "https://www.escapelife.site/Dragon.torrent"
指定索引来下载磁力链文件内容(--select-file=<INDEX>...)
  1. $ aria2c --select-file=1,3 "https://www.escapelife.site/Dragon.torrent"
  2. $ aria2c --select-file=1-3,5 "https://www.escapelife.site/Dragon.torrent"

***

我创建了一个同名知识星球,目前会在星球内连载发布国外名家的文章和书籍,近期已更新了《埃里克叔叔谈个人成功的模型》前6章。星球和公众号内的所有翻译文章,均为个人学习使用,请勿用于商业用途。

cfcd2bff8603c42fb64f77fb7d627009.jpeg

后面我还会陆续增加其他内容和服务,欢迎大家监督和关注。

- EOF -

推荐阅读  点击标题可跳转

1、VS Code 变身小霸王游戏机!

2、认知升级:模型与范式转换

3、超赞的 Python 编译器,单核提速100倍

4、高效的终极秘诀

5、Python 3.12 版本有什么变化?


                                           分享、在看、点赞,3连ce78e0ab544e8fb05906800c51020acf.gif

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/433817
推荐阅读
  

闽ICP备14008679号