schrecke
Goto Top

Batch-script zum Kopieren aller files eines Ordners - vorhande files im Zielordner jedoch löschen wenn nicht im Quellordner nicht vorhanden

im Prinzip eine Sychronisation in eine Richtung ...

Hi

ich wollte mir ein script schreiben, was folgende Funktion erledigt.

Es kopiert alle Dateien eines Ordner in einen anderen (auf externer HDD)
bereits vorhandene werden nicht überschrieben
(und nun das Wichtigstes)
Dateien, welche im Zielordner vorhanden sind, im Quellordner jedoch nicht (mehr), sollen im Zielordner gelöscht werden.

Anwedungsbeispiel:
in einem Ordner landen immer aktuelle Dateien wie music oder Filme. Dieser Ordner soll so auch auf der externen Platte sein. Lösch ich dann zB paar Filme im Quell-Ordner, sollen diese auch auf der externen Platte verschwinden.

Im Prinzip eine Sychronisation in eine Richtung.

Aktuell kopiere ich immer einfach die ganzen Dateien auf die externe Platte, und muss dann immer vergleichen, ob im Quellordner irgendwelche Dateien nicht mehr da sind, um diese dann auf der externen zu löschen.

Wie kann ich sowas machen?

Dank euch
schrecke

Content-ID: 120226

Url: https://administrator.de/forum/batch-script-zum-kopieren-aller-files-eines-ordners-vorhande-files-im-zielordner-jedoch-loeschen-wenn-nicht-120226.html

Ausgedruckt am: 23.12.2024 um 13:12 Uhr

2hard4you
2hard4you 10.07.2009 um 19:14:42 Uhr
Goto Top
Moin,

falls es XP oder Vista ist, ist robocopy mit der Option /MIR Dein Freund

gib mal bei start - ausführen - robocopy.doc ein, das Tool kann noch viel mehr ^^

Gruß

24
schrecke
schrecke 10.07.2009 um 19:21:44 Uhr
Goto Top
danke dir ...

die Datei kann ich nicht öffnen, aber Hilfe gibts ja auch im net

"Wie lege ich ein Backup an?

Prinzipiell benötigen Sie zum Anlegen eines Backups nur einen einzigen Parameter von Robocopy. Dieser Parameter lautet /MIR (Mirror). /MIR legt eine Spiegelung der Struktur der Quelle in einem von Ihnen vorgegebenen Archiv-Ordner an. /MIR besteht eigentlich aus zwei Parametern von Robocopy. /E und /PURGE. /E kopiert alle vollen und auch leeren Unterverzeichnisse, /PURGE löscht alle Dateien im Zielordner, die in der Quelle nicht mehr vorhanden sind. Die Struktur des Befehls muss aussehen wie folgt:"

das wird mir wohl helfen, danke dir

gn8
Chris85
Chris85 11.07.2009 um 08:33:18 Uhr
Goto Top
Hi

Das kannst du alles mit syncToy von Microsoft machen. Ist ind er Handhabenung sehr gut und selbsterklärend. Benutze ich schon länger kannst es dir j mal anschauen.


Gruß

chris
miniversum
miniversum 11.07.2009 um 11:47:58 Uhr
Goto Top
Und mit bordmitteln sieht das dann so aus:
@echo off
set "src=c:\ordner"  
set "dest=C:\ordner 2"  
copy /Y "%src%\*.*" "%dest%\"  
FOR /F "delims=" %%i in ('dir /B "%dest%\*.*"') do if not exist "%src%\%%i" del "%dest%\%%i"  
schrecke
schrecke 11.07.2009 um 14:10:41 Uhr
Goto Top
danke euch allen ... das synctool fetzt und funktioniert. aber vlt. bau ich mir trotzdem ne batch, mal sehen

danke euch face-smile