axel - light command line download accelerator
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 the file.
Unlike most other programs, Axel downloads all the data directly to the
destination file. It saves some time at the end because the program does not
have to concatenate all the downloaded parts.
Axel supports HTTP, HTTPS, FTP and FTPS protocols.
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 mirror URLs to an identical file
can be specified as well and the program will use all those URLs for the
download.
Please note that the program does not check whether the files are equal.
Other options:
- --max-speed=x, -s x
- Specify a speed (bytes per second) to try to keep the
average speed around this speed. This is useful if you do not want the
program to suck up all of your bandwidth.
- --num-connections=x, -n x
- Specify an alternative number of connections.
- --max-redirect=x
- Specify an alternative number of redirections to follow
when connecting to the server (default is 20).
- --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 filename.
- --search[=x], -S[x]
- 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 still
available.
- --ipv6, -6
- Use the IPv6 protocol only when connecting to the
host.
- --ipv4, -4
- Use the IPv4 protocol only when connecting to the
host.
- --no-proxy, -N
- Do not use any proxy server to download the file. Not
possible when a transparent proxy is active somewhere, of course.
- --insecure, -k
- Do not verify the SSL certificate. Only use this if you are
getting certificate errors and you are sure of the sites
authenticity.
--no-clobber,
-c Skip download if a file with the same name
already exists in the current folder and no state file is found.
- --verbose, -v
- Show more status messages. Use it more than once to see
more details.
- --quiet, -q
- No output to stdout.
- --alternate, -a
- 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.
- --help, -h
- A brief summary of all the options.
- --timeout=x, -T x
- Set I/O and connection timeout
- --version, -V
- 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 successful, 1 if something really
went wrong and 2 if the download was interrupted. If something else comes
back, it must be a bug.
The trivial usage to download a file is similar to:
$ axel http://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-9.1.0-amd64-netinst.iso
$ axel ftp://ftp.nl.kernel.org/pub/linux/kernel/v2.2/linux-2.2.20.tar.bz2
This will use the Belgian, Dutch, English and German kernel.org mirrors to
download a Linux 2.4.17 kernel image.
$ axel ftp://ftp.{be,nl,uk,de}.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).
$ axel -S4 ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.17.tar.bz2
- /etc/axelrc
- System-wide configuration file.
- ~/.axelrc
- Personal configuration file.
These files are not documented in a manpage, but the example file which comes
with the program contains enough information. The position of the system-wide
configuration file might be different. In source code this example file is at
doc/ directory. It's generally installed under /usr/share/doc/
axel/examples/, or the equivalent for your system.
Axel was originally written by Wilmer van der Gaast and other authors over time.
Please, see the AUTHORS and CREDITS files.
The project homepage is <
https://github.com/
axel-download-accelerator/
axel>
If you intent to help, please, read the CONTRIBUTING.md file. On Debian systems,
this file will be available at /usr/share/doc/
axel/ directory.