rsync hat eine --list-only
Option, die einen Index der entfernten Dateien einschließlich Zeitstempeln bereitstellt:
$ rsync --list-only $REMOTE drwx------ 160 2018/09/04 12:55:12 . -rw-r--r-- 1,348 2018/09/04 12:52:33 .bash_profile -rw-r--r-- 55 2018/09/04 12:52:33 .bashrc ...
Filtern nach dieser Liste, um nur geeignete Datumsangaben auszuwählen, und diese dann in ein nachfolgendes --files-from
Argument von rsync (das sich auf stdin beziehen kann --files-from=-
) zu verwenden, sollte die Aufgabe erfüllen.
Im folgenden Beispiel werden Dateien mit einer mtime zwischen 2018-08-01 und 2018-08-07 auf dem lokalen Computer rsync (mit entsprechenden Werten von $REMOTE
und $LOCAL_PATH
; Hinweis $5
im Befehl awk bezieht sich auf die fünfte Spalte - dh den Dateinamen - von) die rsync-Ausgabe)
$ rsync --list-only $REMOTE | awk '/2018-08-0[1-7]/ ' | rsync --files-from=- $REMOTE $LOCAL_PATH
Dies löst nicht das vollständige Problem der Verwendung von find
's- -mtime
Typ-Bezeichnern, aber es könnte eine weitere Analyse der Datumszeichenfolge (z. B. Verwendung date
) durchgeführt werden, um dies zu erweitern.