На GitHub вышел проект загрузчика файлов (file downloader) Caracal, написанный на языке программирования Rust.
Исходный код проекта Caracal распространяется под свободной лицензией GNU.
Текущая версия утилиты Caracal имеет поддержку HTTP/HTTP, SFTP и MinIO.
Для сборки Caracal необходимы инструменты и пакеты:rustc, cargo, pkg-config и libgit2.
Пример использования Caracal:
# show usage
caracal help
# download a file from HTTP server
caracal https://www.rust-lang.org/
# download multiple files from HTTP server
caracal https://example.com/a.tar.gz https://example.com/b.zip
# copy a file from local file system
caracal /etc/os-release
# download a file from SFTP server
caracal sftp://my-ssh-server/etc/os-release
# copy a file from MinIO server
caracal minio://myminio/path/to/file
# download multiple files from different services
caracal \
/etc/os-release \
https://example.com/a.tar.gz \
sftp://my-ssh-server/etc/os-release \
minio://myminio/path/to/file
# download multiple files from different services and put them in directory /tmp/downloads
mkdir -p /tmp/downloads && \
caracal -D /tmp/downloads \
/etc/os-release \
sftp://my-ssh-server/etc/os-release \
minio://myminio/path/to/file \
https://example.com/a.tar.gz