Axel - A light download accelerator for Linux.
axel [OPTIONS] url1 [url2] [url...]
Axel is a program that downloads a file from a FTP or HTTP server
through multiple connection, each connection downloads its own part of
Unlike most other programs, Axel downloads all the data directly to the
destination file, using one single thread. It just saves some time at
the end because the program doesn’t have to concatenate all the
One argument is required, the URL to the file you want to download.
When downloading from FTP, the filename may contain wildcards and the
program will try to resolve the full filename. Multiple URL’s can be
specified as well and the program will use all those URL’s for the
download. Please note that the program does not check whether the files
--max-speed=x, -s x
You can specify a speed (bytes per second) here and Axel will
try to keep the average speed around this speed. Useful if you
don’t want the program to suck up all of your bandwidth.
--num-connections=x, -n x
You can specify an alternative number of connections here.
--output=x, -o x
Downloaded data will be put in a local file with the same name,
unless you specify a different name using this option. You can
specify a directory as well, the program will append the
Axel can do a search for mirrors using the filesearching.com
search engine. This search will be done if you use this option.
You can specify how many different mirrors should be used for
the download as well.
The search for mirrors can be time-consuming because the program
tests every server’s speed, and it checks whether the file’s
Don’t use any proxy server to download the file. Not possible
when a transparent proxy is active somewhere, of course.
If you want to see more status messages, you can use this
option. Use it more than once if you want to see more.
No output to stdout.
This will show an alternate progress indicator. A bar displays
the progress and status of the different threads, along with
current speed and an estimate for the remaining download time.
--header=x, -H x
Add an additional HTTP header. This option should be in the form
"Header: Value". See RFC 2616 section 4.2 and 14 for details on
the format and standardized headers.
--user-agent=x, -U x
Set the HTTP user agent to use. Some websites serve different
content based upon this parameter. The default value will
include "Axel", its version and the platform.
A brief summary of all the options.
Get version information.
Long (double dash) options are supported only if your platform knows
about the getopt_long call. If it does not (like *BSD), only the short
options can be used.
The program returns 0 when the download was succesful, 1 if something
really went wrong and 2 if the download was interrupted. If something
else comes back, it must be a bug..
This will use the Belgian, Dutch, English and German kernel.org mirrors
to download a Linux 2.4.17 kernel image.
axel -S4 ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.17.tar.bz2
This will do a search for the linux-2.4.17.tar.bz2 file on
filesearching.com and it’ll use the four (if possible) fastest mirrors
for the download. (Possibly including ftp.kernel.org)
(Of course, the commands are a single line, but they’re too long to fit
on one line in this page.)
/etc/axelrc System-wide configuration file. Note that development
versions place this file in /usr/local/etc.
~/.axelrc Personal configuration file
These files are not documented in a man-page, but the example file
which comes with the program contains enough information, I hope. The
position of the system-wide configuration file might be different.
Axel is Copyright 2001-2002 Wilmer van der Gaast.
Please report bugs at
Wilmer van der Gaast. <email@example.com>