rsync zwischen zwei lokalen Verzeichnissen

14

Ich versuche rsynczwischen zwei Verzeichnissen zu arbeiten, die ich in zwei Dateisystemen habe, die mit demselben Computer verbunden sind. Ich möchte es tun, ohne die zusätzlichen Dateien in zu löschen b. Ich dachte, ein einfaches rsync -a a/dir b/dirwürde funktionieren, aber es scheint nicht. Dies ist auf einem Linux-System mit rsync version 3.0.6 protocol version 30:

$ mkdir -p a/test
$ mkdir -p b/test
$ touch a/test/file1
$ touch a/test/file2
$ touch b/test/file3
$ tree a/test b/test
a/test
├── file1
└── file2
b/test
└── file3

0 directories, 3 files
$ rsync -a a/test/ b/
$ tree a/test b/test
a/test
├── file1
└── file2
b/test
└── file3

0 directories, 3 files

Der gleiche Befehl funktioniert , wenn ich ihn auf einem anderen Linux-System mit einer etwas neueren Version von rsync ( rsync version 3.0.9 protocol version 30) verwende. Irgendwelche Ideen, was fehlt mir?

719016
quelle
Ein Blick auf Ihren Beitrag "rsync -aa / test b / test" scheint einfach gar nichts zu bewirken, stimmt das? Ist das ein Fehler beim Ausschneiden und Einfügen? Ich kenne den cmd 'tree' nicht, aber zumindest zeigen beide 'tree' das gleiche Ergebnis.
Sparkie

Antworten:

16

Bei der Beantwortung meiner eigenen Frage scheint das Problem der Schrägstrich am Ende des SRC-Verzeichnisses zu sein:

rsync -a a/test/ b/

vs.

rsync -a a/test  b/
719016
quelle