Blaubart: rsync - quelle aus datei

Beitrag lesen

Tach.

ich versuche gerade ein rsync durchzuführen das die Quelldaten aus einer Datei liest statt live aus einem Ordner.

Dafür benutzt Du doch sicher --files-from, richtig?

Wenn rsync so eine Zeile liest die nur den Pfad zu einem Ordner enthält dann synct es den kompletten Ordnerinhalt. Das ist aber nicht gewollt, es soll nur angegebene Dateien syncen.

Wenn Du es nicht explizit angibst (entweder durch -r oder durch abschließende Slashes an den Verzeichnisnamen), macht rsync das nicht.

allerdings kann es auch vorkommen das es leere Ordner gibt die gesynct werden sollen, die würde ich dann auch weglassen.

Wenn Du keine speziellen Anweisungen (siehe oben) gibst, sollte rsync bereits genau das tun, was Du willst: in der Liste enthalteten Verzeichnisse erstellen, deren Inhalt aber nicht automatisch kopieren. Ich habe das gerade mit rsync 3.0.6 ausprobiert:

~$ cat syncsrc.txt
    /bin
    /lib/init/vars.sh
    /etc/emacs/

~$ rsync -n -v --files-from=syncsrc.txt / .
    building file list ... done
    bin/
    etc/
    etc/emacs/
    etc/emacs/site-start.el
    etc/emacs/site-start.d/
    lib/
    lib/init/
    lib/init/vars.sh

sent 177 bytes  received 36 bytes  426.00 bytes/sec
    total size is 949  speedup is 4.46 (DRY RUN)

Beachte in der Liste den Slash hinter /etc/emacs. Der führt dazu, daß der Verzeichnisinhalt kopiert wird. Bei /bin hingegen passiert das nicht, da dort der abschließende Slash fehlt.

Was ist hier der beste Weg?

Den kompletten Aufruf, den Du verwendest, hier posten und auch den Teil Deiner Liste, bei dem Deine Probleme auftreten.

--
Always remember that you are unique. Just like everybody else.