🠄 Back to solutions

FTPGrab

FTPGrab is a CLI application for automating file downloads from FTP or SFTP servers.

Description

FTPGrab is a command-line application built with Go, providing a single executable and Docker image for downloading files from remote FTP or SFTP servers. It supports multiple sources, SFTP, and prevents re-downloads using file hashing. A key-value database tracks downloaded files, and it features an internal cron implementation using Go routines. Download failures are handled with retries, and post-download actions such as changing file permissions and modifying timestamps are available. Notifications can be sent via email, Slack, webhooks, and other methods. The application offers enhanced logging and is distributed as a self-contained binary for broad compatibility.

Features

Key features include support for multiple FTP/SFTP sources, prevention of re-downloads via hashing, an efficient database for tracking downloaded files, an internal cron job system, regular expression-based include/exclude filters, date filtering, automatic retry mechanisms for failed downloads, post-download file permission and ownership modification, modtime translation, various notification methods (email, Slack, webhooks, etc.), comprehensive logging, and an official Docker image for easy deployment. It is written in Go and provided as a single executable.

Benefits

FTPGrab simplifies the process of regularly retrieving files from FTP/SFTP servers, automating the process and eliminating manual intervention. Its cross-platform compatibility and single-executable design offer convenience and ease of deployment. The built-in features prevent redundant downloads, ensuring efficiency and saving bandwidth. Notification capabilities keep users informed of download success or failure. The application's robust configuration options provide extensive control over download settings and post-processing actions.

Links

Details