コマンドラインから使える並列ダウンローダ

ファイルをダウンロードするとき、例えば通常のウェブブラウザやcurl, wgetなどを利用することがあると思いますが、巨大なファイルになるとこれらでは時間がかかってしまうことがあります。

そういう場合は並列ダウンロードができるダウンローダを利用するのが便利です。

axel

axelはわりと古めな並列ダウンローダですが、2009年に開発が終了してしまった模様です。とはいえ、現在でも導入することは容易です。

導入方法

MacならHomebrewで簡単に導入できます。

brew install axel

使い方

例えばこんな感じ。

axel -n 10 'http://ftp.riken.jp/Linux/knoppix/knoppix-dvd/KNOPPIX_V8.1-2017-09-05-EN.iso'

nオプションで接続数を指定します。ほかに出力ファイル名を指定するオプションとしてoなど。

aria2

開発がまだ続いている分割ダウンローダとしてはaria2があります。公式ページはこちら

導入方法

やっぱりHomebrewで入れられます。

brew install aria2

使い方

aria2c -x5 'http://ftp.riken.jp/Linux/knoppix/knoppix-dvd/KNOPPIX_V8.1-2017-09-05-EN.iso'

aria2の場合はaxelと異なって、x{接続数}という形で接続数を指定します。こちらも同様、oで出力ファイル名を指定できたりします。

違い

そんなに重大な違いはないと思いますが、ぱっと思いつく相違点としては以下のようなものがあります。

  • axelは開発が終了しているのに対してaria2は現役で開発が継続中
  • aria2では接続数は1-16の間で設定しなければならない(17以上の値を設定しようとするとエラーが出る)のに対してaxelは100とか指定することが(一応)可能。
  • オプション名がちょいちょい違う

その他

  • サンプルがKNOPPIXなのはふとした思いつき
  • -x{n}よりも-n {n}のほうがオプションの指定方法として好きなので僕自身はaxel使ってることが多いです。慣れという説もある。

参考