Rsync kopiert Verzeichnisinhalte, aber nicht das Verzeichnis selbst


118

Ich versuche, zwei Inhalte von Ordnern mit unterschiedlichen Namen zu synchronisieren:

rsync -av ~/foo user@remote.com:/var/www/bar

Ich mag den Inhalt kopieren fooin baran Remote - Host, aber nicht das Verzeichnis fooselbst. Ich habe so etwas versucht foo/*, aber rsync unterstützt das nicht.

rsync erstellt immer

/var/www/bar/foo

18
Lassen Sie einfach den nachgestellten Schrägstrich ausreichen
Exussum

Antworten:


189

Versuchen rsync -av ~/foo/ user@remote.com:/var/www/bar/


37
Dieses Verhalten ist im Vergleich zu mvoder seltsam cp.
Zeekvfu

Scheint seltsam und inkonsistent, um den abschließenden Schrägstrich nur für diesen bestimmten Befehl relevant zu machen. Ich frage mich, warum es nicht geändert wurde.
Luke Davis

39
Für den Fall, dass sich jemand gefragt hat, warum dies funktioniert: Es ist das Nachlaufen /nach dem Verzeichnisnamen.
Etienne Bruines

30

Es ist einfach,

rsync /var/www/ /home/var- kopiert den Inhalt von / var / www /, jedoch nicht den Ordner www .

rsync /var/www /home/var- kopiert den Ordner www zusammen mit seinem gesamten Inhalt.

Das "/" macht den Unterschied.


6
Dies sollte die akzeptierte Antwort sein, die den Unterschied wirklich erklärt
edi9999

29

Nicht nur in Bezug auf rsync, sondern wenn Sie nach Beispielen für die Verwendung eines GNU / Linux-Befehls suchen, können Sie "eg" verwenden, das explizite Beispiele anzeigt. zB finden Sie hier Anweisungen zur Installation: https://github.com/srsudar/eg

Das Ergebnis für eg rsyncist wie folgt

# rsync


copy the folder source_dir and its content into destination_dir

    rsync -av source_dir destination_dir


copy the contents of source_dir (trailing slash) into destination_dir

    rsync -av source_dir/ destination_dir

0

Navigieren Sie in das Verzeichnis, über das Sie kopieren möchten.

cd ~/foo 

Führen Sie Folgendes aus:

rsync -avz . user@remote.com:/var/www/bar
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.