rsync - Dateien ab einer bestimmten Größe ausschließen?

43

Ich führe eine Sicherung meines Desktops auf einem Remote-Computer durch. Ich mache im Grunde rsync -a ~ example.com:backup/aber es gibt jede Menge große Dateien, zB Wikipedia-Dumps usw. Die meisten Dateien, die mir sehr am Herzen liegen, wie Firefox-Cookie-Dateien oder .bashrc. Gibt es einen Aufruf von rsync, der Dateien ab einer bestimmten Größe ausschließt? Auf diese Weise könnte ich zuerst alle Dateien kopieren, die kleiner als 10 MB sind, und dann alle Dateien ausführen. Auf diese Weise kann ich ein schnelles Backup der wichtigsten Dateien erstellen und dann ein längeres Backup von allem anderen.

Rory
quelle
Ja, all diese .isoBilder oder .movBildschirmaufnahmen beanspruchen nicht nur wertvollen Raum, sondern auch wertvolle Zeit. Ich bin im Wettlauf mit der Zeit, um ein Backup meines Computers zu erstellen, bevor ich ihn an die Apple iRepair-Mitarbeiter weitergebe, die Ihre Daten auch dann löschen, wenn dies nicht erforderlich ist.
Sridhar Sarnobat

Antworten:

74

Es gibt eine max-sizeOption:

--max-size=SIZE         don't transfer any file larger than SIZE

Damit:

# rsync -rv --max-size=1.5m root@tss01:/tmp/dm

Sendet nur Dateien, die kürzer als 1,5 m sind.

In Bezug auf Größen von Menschen: Die Suffixe lauten wie folgt: "K" (oder "KiB") ist ein Kibibyte (1024), "M" (oder "MiB") ist ein Mebibyte (1024 * 1024) und "G" ( oder "GiB") ist ein Gibibyte (1024 · 1024 · 1024). Wenn der Multiplikator 1000 anstelle von 1024 sein soll, verwenden Sie "KB", "MB" oder "GB". (Hinweis: Kleinbuchstaben werden auch für alle Werte akzeptiert.) Wenn das Suffix entweder mit "+1" oder "-1" endet, wird der Wert in der angegebenen Richtung um ein Byte versetzt. *

Davey
quelle
3
Beachten Sie jedoch, dass --max-size kein echter "Ausschluss" von der Manpage ist: Diese Option ist eine Übertragungsregel, kein Ausschluss, daher hat sie keinen Einfluss auf die Daten in den Dateilisten. und somit wirkt es sich nicht auf Löschungen aus. Es werden nur die Dateien begrenzt, die der Empfänger zur Übertragung auffordert.
Schlicht