Aria2 is an open source command line tool which can download files using various protocols (HTTP, HTTPS, FTP, BitTorrent, Metalink).
Don't be put off by "command line" - aria2 isn't difficult to use. At a minimum, you can download files just by entering their URL, like aria2c http://www.domain.com/folder1/bigfile.pdf
If you'd like to take more control, though, aria2 has a vast number of optional commands. Would you like to download a file via multiple connections? Validate a download to check its integrity? Resume an interrupted download, throttle your download speed, set a user name/ password for authentication? It's all here, and the torrent support is particularly impressive (DHT, PEX, Encryption, Magnet URI, Web-Seeding, Selective Downloads, Local Peer Discovery and UDP tracker).
These commands may be combined, sometimes with impressive results: the program can download the same file in separate chunks from HTTP and FTP servers, while uploading everything you've got so far to a BitTorrent swarm.
But again, don't be put off by any apparent complexity. There are simpler features, too. Point aria2 at a text file containing URLs, for example, and it'll read, download and save them all: very convenient.
This release fixes assertion error in
SimpleRandomizer::getRandomBytes. It adds new option
Better error message when local file status cannot be retrieved
Fix assertion failure in SimpleRandomizer::getRandomBytes
errno might not be initialized to 0, and we may get both rv == -1
and errno != ENOSYS. This leads to assertion failure. Since
getrandom_linux always returns -1 on failure, checking errno is
useless in this function.
Add option content-disposition-default-utf8