How do i include "modtime" in an --include filter for dropbox?

What is the problem you are having with rclone?

Can't limit included files in lsf, check or copy commands using a specific modtime filter (not --min-age or --max-age) such as 2023-05-01* (any files modified on 1st May 2023)

I know dropbox doesn't support metadata, but it does store the file modtime (read-only) according to the rclone supported features table, so surely there must be a way to use the modtime date/time in a filter comparison? or is the only way using --min-age and --max-age, where I'd have to do a bunch of date calcluations in bash or something to work out how many days since the start of a given month plus how many days to the end of the month to paramaterize --min-age and --max-age?

Run the command 'rclone version' and share the full output of the command.

rclone v1.62.2
- os/version: ubuntu 18.04 (64 bit)
- os/kernel: 4.15.0-211-generic (x86_64)
- os/type: linux
- os/arch: amd64
- go/version: go1.20.2
- go/linking: static
- go/tags: none

Which cloud storage system are you using?

Dropbox

The command you were trying to run:

rclone lsf -M --files-only --metadata-include "mtime=2023-05-01*" "dropbox:Camera Uploads"

The rclone config contents with secrets removed.

[dropbox]
type = dropbox
app_key =
app_secret =
token = {"access_token":"XXXXXXX","token_type":"bearer","expiry":"0001-01-01T00:00:00Z"}

A log from the command with the -vv flag

simon@sserver:~/Downloads/photo_sync$ rclone lsf -M --files-only --metadata-include "mtime=2023-05-01*" "dropbox:Camera Uploads" -vv
2023/06/01 10:53:55 DEBUG : rclone: Version "v1.62.2" starting with parameters ["rclone" "lsf" "-M" "--files-only" "--metadata-include" "mtime=2023-05-01*" "dropbox:Camera Uploads" "-vv"]
2023/06/01 10:53:55 DEBUG : Creating backend with remote "dropbox:Camera Uploads"
2023/06/01 10:53:55 DEBUG : Using config file from "/storage/homes/simon/.config/rclone/rclone.conf"
2023/06/01 10:53:55 DEBUG : 2023-05-15 16.35.35.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-15 16.30.07.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-15 16.33.39.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-06 16.57.30.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-14 13.00.05.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-01 16.46.23.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-01 15.51.07.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-01 19.59.59.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-24 10.17.45.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-24 10.16.45.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-24 10.11.42.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-24 10.09.02.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-24 10.05.45.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-24 10.04.02.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 2023-05-26 19.42.40.mp4: Excluded
2023/06/01 10:53:55 DEBUG : 6 go routines active
2023/06/01 10:53:55 INFO  : Dropbox root 'Camera Uploads': Committing uploads - please wait...

I think using

--min-age 2023-05-01 --max-age 2023-05-02

Should work

Thanks, with a minor tweak that logic works. I didn't realize they can take absolute dates. If I'd read the docs a little harder I'd have seen that flags accepting TIME and DURATION options can specify absolutes.

So the tweak to the logic is the --max-age actually needs to be the date further into the past (2023-05-01) and the --min-age the date closer to the present (2023-05-02). Then it works as expected. So the new command is:

--min-age 2023-05-02 --max-age 2023-05-01

Great - glad that works and sorry for getting the dates the wrong way round. I don't know why but I can never figure out whether to use --min-age or --max-age - some strange blind spot in my brain so I knew when I wrote the above there was a 50% chance I'd get it wrong!

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.