Kurze Antwort
Verwenden der Befehlszeile (Terminal):
cp -r -n ~/Desktop/src/* ~/Desktop/destination/
Der obige Befehl fügt den srcInhalt und die Unterverzeichnisse dem hinzu, destinationohne den Inhalt zu überschreiben, der bereits in der Datei vorhanden ist destination.
Lange Antwort
Auch wenn sich der Inhalt überschneidet, können Sie dies dennoch cptun. Angenommen, Sie zwei Ordner auf Ihrem Desktop haben: die srcund die destinationOrdner und Sie wollen fusionieren srcin destination:

Zum Zusammenführen einfach Folgendes tun:
cp -r ~/Desktop/src/* ~/Desktop/destination/
HINWEIS Wenn Sie dies verwenden, srcüberschreibt der Inhalt in den destinationOrdner und fügt die zusätzlichen Elemente hinzu, die in der fehlen destination. Es sollte keine Rolle spielen, wenn Sie nur die fehlenden Dateien von srcin hinzufügen möchten destination.
AUCH es ist egal, wie viele Unterverzeichnisse es gibt, es durchläuft einfach jeden Ordner rekursiv und überschreibt den Inhalt und fügt das Zeug hinzu, das im destinationOrdner fehlt .
ABER
PITFALL Wenn Sie große Dateien haben (wie z. B. Videodateien), möchten Sie nicht warten, bis alles überschrieben ist. Dies erhöht den Overhead erheblich .
PITFALL-LÖSUNG : Stattdessen können Sie die Markierung verwenden -n, um das Überschreiben zu überspringen:
cp -r -n ~/Desktop/src/* ~/Desktop/destination/
Dies ist die Beschreibung des -nFlags auf der Manpage:
man cp
-n Do not overwrite an existing file. (The -n option overrides any
previous -f or -i options.)
Weitere Lektüre
- /programming/5088332/overhead-of-a-flag-in-cp-command