/rust-parallel-download

A simple program to download files in parallel, built with rust

Primary LanguageRust

rust-parallel-download

A simple program to download files in parallel, built with rust 🦀

Screenshot

Prerequisites

  • rust >= 1.68
  • cargo >= 1.68

Dependencies

futures = "0.3.28"
futures-util = "0.3.28"
clap = { version = "4.2.5", features = ["derive"] }
indicatif = { version = "0.17.3", features = ["rayon"] }
reqwest = { version = "0.11.16", features = ["stream"] }
tokio = { version = "1.28.0", features = ["rt-multi-thread", "macros", "fs"] }

Run

Build release

$ git clone https://github.com/zevtyardt/rust-parallel-download
$ cd rust-parallel-download/
$ cargo run --release

Or install on your local system by running the following command

$ cargo install --git https://github.com/zevtyardt/rust-parallel-download

Then use download_file command to run it

$ download_file -h
Usage: download_file [OPTIONS] [URL]

Arguments:
  [URL]  Url of file to be downloaded

Options:
  -m, --max-connections <int>  Number of HTTP GET connections (2-16)
  -h, --help                   Print help

Features

  • auto-detect file name and size
  • download files separately
  • realtime progress bar
  • command line argument

Any questions

Feel free to open a new issue 🥳