kodach
Goto Top

Zwei Verzeichnise Vergleichen und Nicht vorhandene Datei löschen

Guten Morgen

Ich suche eine Möglichkeit um zwei Verzeichnisse ohne deren Unterverzeichnisse zu vergleichen und eine nicht vorhandene Datei zu löschen. Geht sowas mit einer Batch überhaupt?

- Ich habe ein Verzeichnis A
- Ich habe ein Verzeichnis B
- Es soll nur im Hauptverzeichnis gesucht werden nicht in Unterordner.
- Es soll nur nach einer Dateiendung xyz verglichen werden.
- Ich möchte nun vergleichen, ob es im Verzeichnis B Dateien gibt die NICHT im Verzeichnis A sind. Wenn ja soll er diese im Verzeichnis B löschen.

Beispiel:
Verzeichnis A:
Datei1.xyz
Datei2.xyz
Datei4.xyz

Verzeichnis B:
Datei1.xyz
Datei2.xyz
Datei3.xyz
Datei4.xyz

Jetzt hat es im Verzeichnis B die Datei Datei3.xyz drin die gelöscht werden soll. Es kann sein das es mal keine hat oder mal mehr als eine hat die gelöscht werden muss.

Verzeichnis A soll immer unberührt bleiben. Also nur schauen ob in Verzeichnis B Dateien zuviel drin sind mit der Dateiendung xyz

Wenn dies mit einer Batch nicht gehen sollte, hat jemand eine Idee wie das gemacht werden könne?

Gruss und Danke

Koda

Content-Key: 236028

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

Printed on: April 18, 2024 at 00:04 o'clock

Member: colinardo
Solution colinardo Apr 19, 2014 updated at 08:10:34 (UTC)
Goto Top
Hallo Koda,
kannst du so machen:
@echo off
set "ordnerA=C:\Ordner1"  
set "ordnerB=C:\Ordner2"  

for %%a in ("%ordnerB%\*.xyz") DO @(  
 if not exist "%ordnerA%\%%~nxa" echo del /q "%ordnerB%\%%~nxa"  
)
Im Moment ist der Code noch nicht "scharf" geschaltet und dem del Befehl für deine Testversuche noch ein echo vorgeschaltet. Wenn es geht wie gewünscht einfach das echo entfernen.

Grüße Uwe
Member: CortexA8
CortexA8 Apr 19, 2014 at 07:54:29 (UTC)
Goto Top
Hi,
Also ich hab etwas ähnliches mit Java geschrieben.
Mit file.exists() und mkdir() ist das eigentlich ganz einfach!
Wenn du willst schicke poste ich ein Beispiel rein.

LG CortexA8
Member: KodaCH
KodaCH Apr 19, 2014 at 08:11:52 (UTC)
Goto Top
Guten Morgen

@colinardo vielen Dank. Genau das wars. Dachte schon es wird gar nicht gehen aber war wohl weniger komplex als befürchtet face-smile

@CortexA8 auch dir vielen Dank. Da ich jedoch alle andere Prozesse die ich für dieses Vorhaben verwende per Batch gelöst werden hilft mir Java wenig face-smile

Gruss und frohe Ostern

Koda
Member: CortexA8
CortexA8 Apr 19, 2014 at 10:25:23 (UTC)
Goto Top
Okay :D