Command line download/upload tool with resume support for HTTP(S), FTP, SFTP, SSH, and S3 protocols
aim is a command line file transfer tool that supports downloading and uploading across multiple protocols including HTTP(S), FTP, SFTP, SSH, and S3. The tool determines whether to download or upload based on parameter order - single URLs display contents, two parameters perform transfers based on source and destination placement.
The tool's standout feature is resumable transfers for most protocols, allowing interrupted downloads to continue from the exact byte offset where they stopped. It includes SHA256 checksum validation, automatic HTTP redirect following, and an interactive mode with fuzzy search navigation for browsing remote directories. Authentication is handled through various methods including basic auth in URLs, .netrc files, SSH keys, and AWS credentials.
Additional capabilities include serving local folders over HTTP for cross-device file sharing, automatic decompression when using the '+' output specifier, and pipe-friendly output for integration with other command line tools. The tool supports customizable progress indicators and can self-update in-place. It's designed for developers, system administrators, and users who need reliable file transfers with resume capability across different protocols.
# via Cargo
cargo install aim

