The download accelerators I've found thus far only let me specify a single file to download. This is useful for single large files, but I'm looking for a tool that lets me hand over a list of multiple files to download simultaneously.

In some cases I would want to download the entire list in the traditional accelerated fashion, but sometimes I wouldn't want acceleration - for example, when I was fetching script-generated content.

EDIT: lftp is quite a good program (!), but has no way to show live information about all running downloads, only one (via wait all). I can write a script which watches lftp's file descriptors and displays statistics off of that, but that's decidedly inelegant... and thinking about it, I don't know how big the downloaded file is (since I have no access to the lftp process) so I can't calculate percentages anyway. :(

1 Answer 1


lftp can do that.

You've got:

  • pget to download a single file with several connections
  • mirror -P 4 to download a tree with up to four connections
  • and you can put any get in background to start another one with get file &  (also Ctrl-Z to put a download in background when using it interactively).

You can set the number of connections per site with:

set net:connection-limit 6

Use the jobs command to see the status of the download(s).

lftp supports a number of protocols including HTTP, FTP, SFTP and is scriptable (#! /usr/bin/lftp -f, or lftp -c commands).

  • That's awesome!!1 Thanks :D Time to read the manual.... ^^
    – i336_
    Feb 6, 2014 at 19:26

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .