aget - A small and performant HTTP/HTTPS/Gemini download tool
Usage:
aget ?
URL/A,TO,BUFSIZE/K/N,MINIMIZEDELAY/S,TIMEOUTSECONDS/K/N,DUMPHEADERS/K,TOSTDOUT/S,ONLYPROGRESS/S,QUIET/S:
URL: The URL to download. If no protocol part is given in the
URL, it defaults to http://.
TO: Optional destination path. The default is to download to
the current directory, using the file name from the URL. If
a drive or directory is specified, it will download there
instead. If a path with file name is specified, it will
download to that.
BUFSIZE: Total buffer size in Bytes. This will be rounded to a size
which makes sense for writing to a file system. Default is
128kB.
MINIMIZEDELAY: Do not wait until the buffer is filled up before writing.
Beneficial for minimizing delay, if you are not downloading
to a normal filesystem, but instead to something that does
not prefer evenly sized chunks like PIPE:.
TIMEOUTSECONDS: How many seconds to wait until connection times out. The
default is whatever the connect timeout in the TCP/IP is.
DUMPHEADERS: Dump the headers from the server response to this file.
The format can be parsed by dos.library/ReadArgs() and
friends.
TOSTDOUT: Print the downloaded data to the standard output instead of
downloading it to disk.
ONLYPROGRESS: Only show the progress bar during download.
QUIET: Print no output, except if an error is encountered.
Example:
1> aget https://uhc.a1k.org/UHCTools.lha
Buffer size: 128k
Connected to uhc.a1k.org:443
TLSv1.3 connection is using TLS_CHACHA20_POLY1305_SHA256
Sent GET request!
Server response: 200 OK
Receiving file: 0% - [oooooooooooooooooooooooooooooooo] - 100% (53.23kB)
53.23kB received in 1.07s - 49.42kB/s
Additional usage details:
of the proxy.
Relevant implementation details:
It uses double buffering and asynchronous writes - downloads from the
network to one buffer at the same time as it writes the other buffer to disk.
This more or less removes the effect seek times and slow disks has on the
download speed (as long as the disk is at least as fast as the network).
This will be most effective if you have a real DMA disk controller, as then
the disk writes taking place at the same time as the network download will
steal a minimum of CPU time from the TCP/IP stack.
text/plain
This content has been proxied by September (ba2dc).