Download manager and accelerator
Add support for verbose progress reporting
Support servers which do not support byte ranges
Relicense as MIT

refs

master
browse log
v0.1.6
browse .tar.gz

clone

read-only
https://git.sr.ht/~tslocum/gophast
read/write
git@git.sr.ht:~tslocum/gophast

You can also use your local clone with git send-email.

gophast

GoDoc builds.sr.ht status Donate

Download manager and accelerator

Features

  • Uses multiple connections to accelerate file transfers
  • Pause/resume support
    • Download progress is periodically written to a control file
    • Downloads are automatically paused when they are interrupted
    • Downloads are automatically resumed when a control file is present

Installation

Usage

gophast [OPTIONS] URL
   
OPTIONS:
  --dir value, -d value            directory to save in (default: current directory) [$GOPHAST_DIR]
  --downloads value, -j value      number of files to download concurrently (default: 5) [$GOPHAST_DOWNLOADS]
  --out value, -o value            file name to save as (default: from URL) [$GOPHAST_OUT]
  --split-conns value, -x value    split download using multiple connections (default: 3) [$GOPHAST_SPLIT_CONNECTIONS]
  --split-servers value, -s value  split download using multiple URLs (default: 1) [$GOPHAST_SPLIT_SERVERS]
  --split-size value, -k value     minimum byte range size (default: 10485760) [$GOPHAST_SPLIT_SIZE]
  --help, -h                       show help

Split download using at most three connections at least 10MB in size (default settings):

gophast https://example.com/file.zip

Split download using at most seven connections at least 2MB in size:

gophast -x 7 -k 2MB https://example.com/file.zip