cappu25
Goto Top

Batch Verzeichnis vergleichen, in einer anderes kopieren

Halloo an alle,

ich habe jetzt schon verdammt lange rumprobiert und gegooglet.. aber ich bekomme keine Lösung hin. Folgendes:

Ich möchte QuelleA mit ZielC vergleichen. Sind in QuelleA neue Dateien vorhanden, sollen nur die neuen nach ZielC UND ZielB kopiert werden.
Kann man sowas irgendwie realisieren?

Ich habe es jetzt so: aber es kopiert im letzten Schritt immer alles...

SET QuelleA=C:\Users\Nataria\Desktop\LTP\QuelleA
SET ZielB=C:\Users\Nataria\Desktop\LTP\ZielB
SET ZielC=C:\Users\Nataria\Desktop\LTP\ZielB\ZielC
SET DAT=*.*

SET Rechnung=12345678-*.*

REM Kopieren der aktuellen Dateien und Protokoll schreiben
robocopy "%QuelleA%" "%ZielC%" "%DAT%" /XC /XN /XO /LOG:"%~dp0Logfile.log"
xcopy "%ZielC%" "%ZielB%" /d /s /y

Schon mal vielen Dank!

Content-Key: 271705

Url: https://administrator.de/contentid/271705

Printed on: April 19, 2024 at 17:04 o'clock

Member: potshock
potshock May 11, 2015 at 07:56:24 (UTC)
Goto Top
Hi cappu25,

der Parameter /MIR ist dein Freund face-wink.
"/MIR" kopiert komplette Verzeichnisse auch leere Ordner, entfernt aber nicht mehr vorhandenen Ordner und Dateien (quasi eine Synchronisation in eine Richtung)

Potshock
Member: ITvortex
ITvortex May 11, 2015 at 07:57:33 (UTC)
Goto Top
Guten Morgen!

Wenn du es nicht selbst schreiben willst dann gäbe es hierfür auch TotalCommander (http://www.ghisler.com/deutsch.htm)

Liebe Grüße
ITvortex
Member: cappu25
cappu25 May 12, 2015 at 08:30:30 (UTC)
Goto Top
Hallo Potshock,

erstmal vielen Dank für die schnelle Antwort.
Hmm, das ist nicht ganz das was ich brauche.
Ich verusche es nochmal zu erklären:
In Quelle werden immer mal wieder neue Dateien gespeichert
ZielC ist als Archiv oder Sicherung von der Quelle gedacht.
Jedoch soll jedesmal beim Ausführen der Batchdatei geprüft werden,
ob neue Dateien in der Quelle sind, falls ja werden die neuen und nur die neuen in ZielC und ZielB kopiert.
Also eigtl brauche ich was, dass zweimal einfügen kann ?! Irgendwie so..

Danke !

LG cappu
Member: cappu25
cappu25 May 12, 2015 at 08:34:45 (UTC)
Goto Top
Hallo ITvortex,

auch dir danke für die Antwort.
Ich kenne mich da nicht aus, was ist das genau?
Ich habe es jetzt zwar installiert und dann ? xD
Ist das wie ein Makro Recorder? Oder was macht das ^^

LG cappu
Member: ITvortex
ITvortex May 12, 2015 at 11:01:31 (UTC)
Goto Top
Hallo cappu25!

TotalCommander ist ein zusätzlicher Explorer, der die Funktion bietet 2 Verzeichnisse zu syncronisieren.

http://www.ghisler.com/screenshots/de/08.html

Liebe Grüße
ITvortex
Member: cappu25
cappu25 May 13, 2015 at 10:36:22 (UTC)
Goto Top
Huhu ITvortex,

das ist eigentlich gar nicht was ich suche 0o
das muss man dann ja jeden Tag manuell machen..
trotzdem vielen Dank für deine Antwort!

LG
Member: cappu25
cappu25 May 21, 2015 at 11:01:42 (UTC)
Goto Top
Hat da auch keiner eine Idee?
Ich hatte mir noch überlegt, dass man im 1. Schritt die Dateien von Quelle nach ZielC umbenennt und die umbenannten dann nach ZielB.
Aber irgendwie kopiert er dann immer alles ?!

HILFE!!

Danke cappu
Mitglied: 114757
114757 May 21, 2015 updated at 11:28:53 (UTC)
Goto Top
Moin cappu,
dafür gibt es in Robocopy einmal den Parameter /A und dann noch /M.
Du machst einfach zwei Robocopy-Befehle einen für das erste und einen für das zweite Ziel.
Beim ersten Befehl nutzt du den Parameter /A (es werden also nur geänderte Dateien mit aktiven Archiv-Attribut übertragen), und beim zweiten Befehl für das zweite Ziel nutzt du den Parameter /M (welcher nach dem kopieren das Archiv-Attribut zurücksetzt).
/A :: Kopiert nur Dateien mit dem "Archive"-Attribut.  
/M :: Kopiert nur Dateien mit dem "Archive"-Attribut und setzt das Attribut zurück.  

Natürlich gehts auch einfach mit dem Parameter /E auf beide Ziele. Weis also nicht wo dein Problem liegt ..

Gruß jodel32
Member: cappu25
cappu25 May 22, 2015 at 10:20:48 (UTC)
Goto Top
Hallo jodel32,

vielen Dank für deine Antwort.
Ja wenn man sowas weiß, ist das sicher kein Problem, deswegen frag ich ja face-smile

Also ich habe das jetzt so umgesetzt:

SET QuelleA=C:\Users\Nataria\Desktop\LTP\QuelleA\\
SET ZielB=C:\Users\Nataria\Desktop\LTP\ZielB\\
SET ZielC=C:\Users\Nataria\Desktop\LTP\ZielB\ZielC\\
SET DAT=*.*
SET Rechnung=15003122-*.*
robocopy "%QuelleA%" "%ZielC%" "%DAT%" /A /LOG:"%~dp0Logfile.log"
robocopy "%QuelleA%" "%ZielB%" "%DAT%" /M

Aber es kommt bei dem Protokoll ein Fehler, aber er sagt mir nicht welcher?

Und bei /E kopiert er alles in ZielB, statt nur die neuen.

Und was genau ist das mit diesem Archiv Attribut? Sorry, kenne mich da nicht so aus und würde es gerne verstehen.

DANKE schon mal face-smile
grüßle
Mitglied: 114757
114757 May 22, 2015 updated at 10:29:52 (UTC)
Goto Top
Zitat von @cappu25:

SET QuelleA=C:\Users\Nataria\Desktop\LTP\QuelleA\\
SET ZielB=C:\Users\Nataria\Desktop\LTP\ZielB\\
SET ZielC=C:\Users\Nataria\Desktop\LTP\ZielB\ZielC\\
SET DAT=*.*
SET Rechnung=15003122-*.*
robocopy "%QuelleA%" "%ZielC%" "%DAT%" /A /LOG:"%~dp0Logfile.log"
robocopy "%QuelleA%" "%ZielB%" "%DAT%" /M

Aber es kommt bei dem Protokoll ein Fehler, aber er sagt mir nicht welcher?
Schau dir mal deine Pfade an ! Der doppelte Backslash am Ende kommt nicht gut ...

Und bei /E kopiert er alles in ZielB, statt nur die neuen.
Aber nur beim ersten mal, bei den folgenden Laufen nur noch Dateien die sich in der Quelle geändert haben, deswegen ist es ja Robocopy face-wink

Und was genau ist das mit diesem Archiv Attribut? Sorry, kenne mich da nicht so aus und würde es gerne verstehen.
Das Archiv-Attribut hat jede Datei im NTFS-Dateisystem, (kannst du im Kontextmenü jeder Datei unter Allgemein > Erweitert nachsehen).
Bei der Option /A werden nur Dateien gesichert bei denen das Attribut gesetzt ist, nach dem Lauf aber nicht entfernt. Die Option /M dagegen sichert ebenfalls alle Files mit gesetztem Archiv-Attribut aber nach dem lauf entfernt es das Attribut aus den Quell-Dateien.
Wenn jetzt ein User irgendetwas an einer Datei in der Quelle ändert, setzt Windows automatisch das Archiv-Attribut der Datei. Also werden beim nächsten Sicherungslauf nur Dateien gesichert bei denen das Attribut gesetzt ist und das sind eben nur die die man geändert hat.

Gruß jodel32
Member: cappu25
cappu25 May 22, 2015 at 10:29:43 (UTC)
Goto Top
Halt ! Züruck!
Ich habe es mit "alten" Dateien getestet!
Das mit den /A /M funktioniert doch!
Super vielen Dank!
Habe mich auch schlau gemacht wegen der Attribute face-smile
Vielen lieben Dank!!