# FTPGrab

FTPGrab is a command-line tool that periodically pulls files from remote FTP and SFTP servers to local storage. It is open source and self-hosted, installable on Docker Hub and Unraid.

Canonical page: https://ourlocalhost.com/app/652/ftpgrab

## Description

FTPGrab is a command-line tool that periodically pulls files from remote FTP and SFTP servers to local storage. It supports scheduling, file filters, skipping already-downloaded files, and post-run notifications, making it well suited for unattended transfers from seedboxes or home servers.

## Platform availability

Available on 1 of 9 platforms: Unraid.

## Health score

63/100 (Good), based on 3 of 4 factors.
- Maintained: 81 (last commit 105 days ago)
- Popular: 55 (564 GitHub stars)
- Easy to install: 35 (1 install platform, install notes, Docker image)

## Links

- Docker Hub: https://hub.docker.com/r/crazymax/ftpgrab/
- Unraid: https://ca.unraid.net/apps/ftpgrab-0t12hxz12st1tf?q=ftpgrab
- Official website: https://crazymax.dev/ftpgrab/
- GitHub: https://github.com/crazy-max/ftpgrab
- Documentation: https://crazymax.dev/ftpgrab/install/docker/

## Common questions

### What folders should I bind-mount for FTPGrab Docker?

Map /db for the bbolt database file and /download for downloaded files.

### How does FTPGrab avoid downloading the same files repeatedly?

It keeps track of what has already been downloaded so it can avoid re-downloading files.

### How are regular expression filters matched in FTPGrab?

FTPGrab uses Compile to parse regular expressions. The regexp returns a match that begins as early as possible in the input, like Perl and Python.

## Alternatives

- FreeFileSync: FreeFileSync is a folder comparison and synchronization tool that helps homelab users create backup copies of important files.
- GoodSync: GoodSync is a professional software for file backup and synchronization.

---
Source: Our Local Host (https://ourlocalhost.com/app/652/ftpgrab), the self-hosted and open-source app directory.
