閱讀722 返回首頁    go 阿裏雲 go 技術社區[雲棲]


使用 Axel 命令行下載器/加速器加速下載

Axel 是一個輕量級下載程序,它和其他加速器一樣,對同一個文件建立多個連接,每個連接下載單獨的文件片段以更快地完成下載。

Axel 支持 HTTP、HTTPS、FTP 和 FTPS 協議。它也可以使用多個鏡像站點下載單個文件,所以,Axel 可以加速下載高達 40%(大約,我個人認為)。它非常輕量級,因為它沒有依賴並且使用非常少的 CPU 和內存。

Axel 一步到位地將所有數據直接下載到目標文件(LCTT 譯注:而不是像其它的下載軟件那樣下載成多個文件塊,然後拚接)。

注意:不支持在單條命令中下載兩個文件。

你還可以嚐試其他命令行下載管理器/加速器。

大多數發行版(Debian、Ubuntu、Mint、Fedora、suse、openSUSE、Arch Linux、Manjaro、Mageia 等)都有 axel 包,所以我們可以從發行版官方倉庫輕鬆安裝。對於 CentOS/RHEL,我們需要啟用 EPEL Repository


  1. [在 Debian/Ubuntu/LinuxMint 上安裝 Axel]
  2. $ sudo apt-get install axel
  3. [在 RHEL/CentOS 上安裝 Axel]
  4. $ sudo yum install axel
  5. [在 Fedora 上安裝 Axel]
  6. $ sudo dnf install axel
  7. [在 openSUSE 上安裝 Axel]
  8. $ sudo zypper install axel
  9. [在 Mageia 上安裝 Axel]
  10. $ sudo urpmi axel
  11. [在基於 Arch Linux 的發行版安裝 Axel]
  12. $ sudo pacman -S axel

1) 下載單個文件

以下命令將從給定的 URL 下載文件並存儲在當前目錄中,下載文件時,我們可以看到文件的信息(建立的連接數、下載速度、下載進度、完成下載所花費的時間以及連接完成的時間)。


  1. # axel https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  2. Initializing download: https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  3. File size: 22678208 bytes
  4. Opening output file owncloud-9.0.0.tar.bz2
  5. Starting download
  6. [ 0%] .......... .......... .......... .......... .......... [ 146.7KB/s]
  7. [ 0%] .......... .......... .......... .......... .......... [ 267.0KB/s]
  8. [ 0%] .......... .......... .......... .......... .......... [ 373.9KB/s]
  9. [ 0%] .......... .......... .......... .......... .......... [ 406.9KB/s]
  10. [ 0%] .......... .......... .......... .......... .......... [ 487.5KB/s]
  11. [ 1%] .......... .......... .......... .......... .......... [ 572.6KB/s]
  12. [ 1%] .......... .......... .......... .......... .......... [ 650.7KB/s]
  13. [ 1%] .......... .......... .......... .......... .......... [ 649.3KB/s]
  14. [ 1%] .......... .......... .......... .......... .......... [ 718.1KB/s]
  15. [ 2%] .......... .......... .......... .......... .......... [ 769.3KB/s]
  16. [ 2%] .......... .......... .......... .......... .......... [ 838.7KB/s]
  17. [ 2%] .......... .......... .......... .......... .......... [ 866.0KB/s]
  18. Connection 0 finished
  19. .
  20. .
  21. [ 99%] .......... .......... .......... .......... .......... [5721.0KB/s]
  22. Connection 2 finished
  23. [ 99%] .......... .......... .......... .......... .......... [5733.4KB/s]
  24. Connection 1 finished
  25. [ 99%] .......... .......... .......... .......... .......... [5745.4KB/s]
  26. [100%] .......... .......... .......... .......... ......
  27. Downloaded 21.6 megabytes in 3 seconds. (5755.94 KB/s)

2) 用不同的名稱保存文件

要使用其他名稱來保存文件,啟動下載時可以添加 -o(小寫字母)選項和文件名。這裏我們使用文件名 owncloud.tar.bz2 來保存文件。


  1. # axel -o cloud.tar.bz2 https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  2. Initializing download: https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  3. File size: 22678208 bytes
  4. Opening output file cloud.tar.bz2
  5. Starting download
  6. [ 0%] .......... .......... .......... .......... .......... [ 143.0KB/s]
  7. [ 0%] .......... .......... .......... .......... .......... [ 264.1KB/s]
  8. [ 0%] .......... .......... .......... .......... .......... [ 309.8KB/s]
  9. [ 0%] .......... .......... .......... .......... .......... [ 406.3KB/s]
  10. [ 0%] .......... .......... .......... .......... .......... [ 495.4KB/s]
  11. [ 1%] .......... .......... .......... .......... .......... [ 586.3KB/s]
  12. [ 1%] .......... .......... .......... .......... .......... [ 673.1KB/s]
  13. [ 1%] .......... .......... .......... .......... .......... [ 647.1KB/s]
  14. [ 1%] .......... .......... .......... .......... .......... [ 721.1KB/s]
  15. [ 2%] .......... .......... .......... .......... .......... [ 781.3KB/s]
  16. Connection 2 finished
  17. .
  18. .
  19. Connection 0 finished
  20. [ 98%] .......... .......... .......... .......... .......... [6221.9KB/s]
  21. [ 98%] .......... .......... .....
  22. Connection 1 finished
  23. ,,,,,,,,,, ,,,,,,,,,, ,,,,,..... .......... .......... [6145.6KB/s]
  24. [ 99%] .......... .......... .......... .......... .......... [6159.2KB/s]
  25. [ 99%] .......... .......... .......... .......... .......... [6172.0KB/s]
  26. [ 99%] .......... .......... .......... .......... .......... [5977.9KB/s]
  27. [ 99%] .......... .......... .......... .......... .......... [5989.6KB/s]
  28. [100%] .......... .......... .......... .......... ......
  29. Downloaded 21.6 megabytes in 3 seconds. (6001.05 KB/s)

3) 限製下載速度

默認情況下 axel 以字節/秒為單位設置下載文件的最大速度。當我們的網絡連接速度較慢時,可以使用此選項。隻需添加 -s 選項,後麵跟字節值。這裏我們要限速 512 KB/s 下載一個文件。


  1. # axel -s 512000 https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  2. Initializing download: https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  3. File size: 22678208 bytes
  4. Opening output file owncloud-9.0.0.tar.bz2
  5. Starting download
  6. [ 0%] .......... .......... .......... .......... .......... [ 141.5KB/s]
  7. [ 0%] .......... .......... .......... .......... .......... [ 266.1KB/s]
  8. [ 0%] .......... .......... .......... .......... .......... [ 308.0KB/s]
  9. [ 0%] .......... .......... .......... .......... .......... [ 405.9KB/s]
  10. [ 0%] .......... .......... .......... .......... .......... [ 496.7KB/s]
  11. [ 1%] .......... .......... .......... .......... .......... [ 526.4KB/s]
  12. [ 1%] .......... .......... .......... .......... .......... [ 507.0KB/s]
  13. [ 1%] .......... .......... .......... .......... .......... [ 505.6KB/s]
  14. [ 1%] .......... .......... .......... .......... .......... [ 504.8KB/s]
  15. [ 2%] .......... .......... .......... .......... .......... [ 503.9KB/s]
  16. [ 2%] .......... .......... .......... .......... .......... [ 503.4KB/s]
  17. .
  18. .
  19. [ 99%] .......... .......... .......... .......... .......... [ 497.0KB/s]
  20. [ 99%] .......... .......... .......... .......... .......... [ 496.9KB/s]
  21. [100%] .......... ..
  22. Connection 0 finished
  23. ,,,,,,,,,, ,,.....
  24. Connection 1 finished
  25. Connection 3 finished
  26. ,,,,,,,,,, ,,,,,,,... .......... .......... ......
  27. Downloaded 21.6 megabytes in 44 seconds. (494.54 KB/s)

4) 限製連接數

axel 默認建立 4 個連接以從不同的鏡像獲取文件。此外,我們可以通過使用 -n 選項添加更多的連接,後跟連接數 10 來提高下載速度。保險起見,我們添加了十個連接,但不幸的是,它花了更多時間來下載文件。


  1. # axel -n 10 https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  2. Initializing download: https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  3. File size: 22678208 bytes
  4. Opening output file owncloud-9.0.0.tar.bz2
  5. Starting download
  6. [ 0%] .......... .......... .......... .......... .......... [ 140.8KB/s]
  7. [ 0%] .......... .......... .......... .......... .......... [ 265.7KB/s]
  8. [ 0%] .......... .......... .......... .......... .......... [ 305.4KB/s]
  9. [ 0%] .......... .......... .......... .......... .......... [ 402.1KB/s]
  10. [ 0%] .......... .......... .......... .......... .......... [ 496.3KB/s]
  11. [ 1%] .......... .......... .......... .......... .......... [ 522.1KB/s]
  12. [ 1%] .......... .......... .......... .......... .......... [ 567.5KB/s]
  13. [ 1%] .......... .......... .......... .......... .......... [ 640.5KB/s]
  14. [ 1%] .......... .......... .......... .......... .......... [ 710.8KB/s]
  15. [ 2%] .......... .......... .......... .......... .......... [ 780.5KB/s]
  16. .
  17. .
  18. [ 98%] .......... .......... .......... .......... .......... [7544.9KB/s]
  19. [ 98%] .......... .......... .......... .......... .......... [7557.9KB/s]
  20. [ 98%] .......... .......... .......... .......... .......... [7570.4KB/s]
  21. [ 98%] .......... .......... .......... .......... .......... [7495.3KB/s]
  22. [ 99%] .......... .......... .......... .......... ......
  23. Connection 2 finished
  24. ,,,,,,,,,, ,,,,,,,,,, ,,,,,,,,,, ,,,,,,,,,, ,,,,,,.... [7311.6KB/s]
  25. [ 99%] .......... .......... .......... .......... .......... [7318.9KB/s]
  26. [ 99%] .......... .......... .......... .......... ..........
  27. Connection 9 finished
  28. ,,,,,,,,,, ,,,,,,,,,, ,,,,,,,,,, ,,,,,,,,,, ,,,,,,,,,, [7331.0KB/s]
  29. [ 99%] .......... .......... .......... ..........
  30. Connection 3 finished
  31. ,,,,,,,,,, ,,,,,,,,,, ,,,,,,,,,, ,,,,,,,,,, .......... [4300.7KB/s]
  32. [100%] .......... .......... .......... .......... ......
  33. Downloaded 21.6 megabytes in 5 seconds. (4109.41 KB/s)

5) 恢複未完成的下載

axel 默認具有恢複未完成的下載的行為。Axel 在下載文件時定期更新狀態文件(擴展名為 .st)。由於某些原因,下載中途停止了?不用擔心,隻要使用相同的 axel 命令,它將會檢查 file 和file.st,如果找到,它會從停止處恢複下載。


  1. # axel https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  2. Initializing download: https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  3. File size: 22678208 bytes
  4. Opening output file owncloud-9.0.0.tar.bz2
  5. Starting download
  6. [ 0%] .......... .......... .......... .......... .......... [ 140.8KB/s]
  7. [ 0%] .......... .......... .......... .......... .......... [ 265.7KB/s]
  8. [ 0%] .......... .......... .......... .......... .......... [ 305.4KB/s]
  9. [ 0%] .......... .......... .......... .......... .......... [ 402.1KB/s]
  10. [ 0%] .......... .......... .......... .......... .......... [ 496.3KB/s]
  11. [ 1%] .......... .......... .......... .......... .......... [ 522.1KB/s]
  12. [ 1%] .......... .......... .......... .......... .......... [ 567.5KB/s]
  13. [ 1%] .......... .......... .......... .......... .......... [ 640.5KB/s]
  14. [ 1%] .......... .......... .......... .......... .......... [ 710.8KB/s]
  15. [ 2%] .......... .......... .......... .......... .......... [ 780.5KB/s]
  16. .
  17. .
  18. [ 84%] .......... .......... .......... .......... .......... [7100.7KB/s]
  19. [ 84%] .......... .......... .......... .......... .......... [7104.3KB/s]
  20. [ 84%] .......... .......... .......... .^C
  21. Downloaded 18.3 megabytes in 2 seconds. (7009.79 KB/s)

上麵的輸出清晰地顯示了在下載斷開時有兩個文件 owncloud-9.0.0.tar.bz2 和 owncloud-9.0.0.tar.bz2.st。當重新開始下載時,它會從停止處開始下載。


  1. # ls -lh
  2. total 19M
  3. -rw------- 1 root root 22M Dec 27 08:33 owncloud-9.0.0.tar.bz2
  4. -rw------- 1 root root 44 Dec 27 08:33 owncloud-9.0.0.tar.bz2.st
  5. # axel https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  6. Initializing download: https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  7. File size: 22678208 bytes
  8. Opening output file owncloud-9.0.0.tar.bz2
  9. State file found: 19180828 bytes downloaded, 3497380 to go.
  10. Starting download
  11. ,,,,,,,,,, ,,,,,,,,,, ,,,,,,,,,, ,......... .......... [ 66.5KB/s]
  12. [ 84%] .......... .......... .......... .......... .......... [ 186.0KB/s]
  13. [ 85%] .......... .......... .......... .......... .......... [ 241.7KB/s]
  14. [ 85%] .......... .......... .......... .......... .......... [ 335.6KB/s]
  15. [ 85%] .......... .......... .......... .......... .......... [ 351.5KB/s]
  16. [ 85%] .......... .......... .......... .......... .......... [ 427.1KB/s]
  17. [ 85%] .......... .......... .......... .......... .......... [ 427.4KB/s]
  18. [ 86%] .......... .......... .......... .......... .......... [ 491.5KB/s]
  19. .
  20. .
  21. [ 98%] ...
  22. Connection 0 finished
  23. ,,,....... .......... .......... .......... .......... [2106.6KB/s]
  24. [ 99%] .......... .......... .......... .......... .......... [2140.5KB/s]
  25. [ 99%] .......... .......... .......... .......... .......... [2172.4KB/s]
  26. [ 99%] .......... .......... .......... .......... .......... [2203.2KB/s]
  27. [ 99%] .......... .......... .......... .......... .......... [2236.2KB/s]
  28. [100%] .......... .......... .......... .......... ......
  29. Downloaded 3415.4 kilobytes in 1 second. (2264.93 KB/s)

6) 不顯示文件下載進度

如果你不想要看到文件的下載進度,隻要在 axel 命令中加入 -q 選項。


  1. # axel -q https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2

7) 替換進度條

如果你不喜歡默認的進度條,你可以使用 -a 選項來替換進度條。


  1. # axel -a https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  2. Initializing download: https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  3. File size: 22678208 bytes
  4. Opening output file owncloud-9.0.0.tar.bz2
  5. Starting download
  6. [ 66%] [......0 ...1 ..........2 ...........3] [ 5.8MB/s] [00:01]^C
  7. Downloaded 14.3 megabytes in 2 seconds. (5916.11 KB/s)

我們中斷了上麵的下載,以便在下載文件時能清楚地顯示替代進度條狀態。一旦文件成功下載後,你可以看到相同的輸出,如下所示。


  1. # axel -a https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
  2. File size: 22678208 bytes
  3. Opening output file owncloud-9.0.0.tar.bz2
  4. Starting download
  5. Connection 2 finished ]
  6. Connection 1 finished ]
  7. Connection 3 finished ]
  8. Connection 0 finished ]
  9. Downloaded 21.6 megabytes in 4 seconds. (5062.32 KB/s)

8) 了解關於 axel 的更多信息

如果你想要了解更多關於 axel 的選項,隻需要進入它的手冊。


  1. # man axel
  2. 或者
  3. # axel --help

原文發布時間為:2017-01-19

本文來自雲棲社區合作夥伴“Linux中國”

最後更新:2017-05-27 10:02:48

  上一篇:go  達芬奇有多努力?看看他當年的任務清單
  下一篇:go  學渣的逆襲:他叛逆狂妄,卻搞出不少大新聞