Basics of rclone

Using Filters in rclone

Using filtering options and patterns, you can configure rclone to skip certain files and directories. Filtering rules in rclone work with most commands, including copy and sync. A filtering rule in rclone consists of two parts: an exclude or include subcommand and a filtering pattern. Rclone features four filtering subcommands: --exclude, --exclude-from, --include, and --include-from. The first two commands can be used to exclude files, and the other two let you limit the current operation only to the specified files. The --exclude subcommand allows you to specify the filtering pattern in-line, for example:

rclone --exclude *.log sync /path/to/source remote:destination

This command syncs everything except the files with the .log extension. Instead of specifying a filtering rule on the fly, you can save a list of filtering patterns in a text file and use the --exclude-from subcommand with it:

rclone --exclude-from=filters.txt copy /path/to/source remote:destination

The --include command can come in useful when you need to limit rclone to a specific subset of files. For example, if you want to sync TIFF and JPEG files in a directory and skip the rest, the following filtering rule does the job:

rclone --include *.{tif,jpg} copy /path/to/source remote:destination

Similar to --exclude-from, the --include-from command can read filtering patterns from a text file.

Using the exclude and include subcommands, you can create filtering rules that either skip or include matching files. But, what if you need to create a set of filters that combines both? Then the --filter-from subcommand is what you need. This subcommand reads a text file containing include and exclude filtering rules and applies them to the current rclone operation:

rclone --filter-from=filters.txt sync /path/to/source remote:destination

Each line in the specified text files contains a filtering rule that starts with either the + (include) or - (exclude) prefix, for example:

+ *.jpeg
+ *.tiff
- *.MP4
- *.xmp

As you may have noticed, the filtering patterns in rclone are based on wildcards. Although they are not as powerful as regular expressions, wildcards are significantly easier to master. And, if you are used to using wildcards when working from the command line, you won't have problems composing filtering rules for rclone.

Final Word

The rclone utility has a lot going for it. It's easy to deploy, it supports many popular cloud storage services, and it's powerful enough for most backup needs. So, if you are planning to introduce a cloud backup system to your workflow, you might want to give rclone a closer look.

The Author

Dmitri Popov has been writing exclusively about Linux and open source software for many years, and his articles have appeared in Danish, British, US, German, Spanish, and Russian magazines and websites. Dmitri is an amateur photographer, and he writes about open source photography tools on his Scribbles and Snaps blog at http://scribblesandsnaps.wordpress.com.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • The sys admin's daily grind: Rclone

    Having a good backup is a matter of course for sys admin columnist Charly Kühnast, but devices could still fall victim to fire or theft some day. Because he has enough free space on Google Drive, he doesn't need to search long for a solution. The only thing missing is the right tool.

  • Google Drive File Sync with rclone
  • Website Backup

    Shared hosting is the best way for first-time webmasters to get started. But what do you do about backup?

  • FOSSPicks

    Graham nearly made it through an entire month of FOSSPicks without an esoteric audio discovery. And then he found VeeSeeVSTRack.

  • Light Browsing

    This Chromium port can run inside any console, with minimal resources, and is a great tool for making old computers really useful – and learning programming along the way.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News