Es ist lustig, es gibt viele Möglichkeiten, wie Linux-Befehlszeilentools den Windows-Tools weit überlegen sind, aber eine Sache, für die ich kein Äquivalent gefunden habe, ist Robocopy . Robocopy ist viel vielseitiger als cp
, und ich kann nicht herausfinden, wie ich mit Linux-Tools machen soll, was ich will.
Ein spezieller Anwendungsfall ist, dass ich zwei Verzeichnisse mit zumeist ähnlichen Dateien habe, aber eines neuere Quelldateien und eines Inhaltsdateien, die das andere Verzeichnis nicht hat, und möglicherweise neuere Quelldateien (für eine Website). Ich möchte die Dateien aus dem letzteren Verzeichnis in das erstere kopieren, neue Inhaltsdateien und dergleichen hinzufügen, aber neuere Dateien im Zielverzeichnis nicht überschreiben.
Ich habe versucht, eine halbe Stunde lang herauszufinden, wie das unter Linux geht, und dann festgestellt, dass ich wahrscheinlich Bash-Skripte lernen oder etwas tun muss, was ich wollte. Ich hatte auch einige andere Anforderungen. Ich habe im Grunde genommen eine Python (Django) -Website von einem SVN-Repository in ein Git-Repository konvertiert und wollte sicherstellen, dass keine nicht festgeschriebenen Änderungen in SVN vorgenommen wurden. Ich wollte jedoch die .svn
Verzeichnisse und die .pyc
kompilierten Python-Dateien bedingt ausschließen . Der folgende Robocopy-Befehl macht genau das, was ich will:
robocopy source destination /XO /E /XD .svn /XF *.pyc
Gibt es eine Entsprechung zu Robocopy unter Linux? Ich habe rsync
kurz nachgeschaut , aber es schien, als müsste ich einen Rsync-Server einrichten, bevor ich versuche, die Ordner zu synchronisieren.