Welenreiter Geschrieben 21. September 2005 Geschrieben 21. September 2005 Hallo Leute, ich suche ein tool das mit die Dateien in 2 Verzeichnissen vergleicht und dann ausspuckt welche unterschiedlich sind. Kennt jemand ein solches? Zitieren
perdian Geschrieben 21. September 2005 Geschrieben 21. September 2005 ich suche ein tool das mit die Dateien in 2 Verzeichnissen vergleicht und dann ausspuckt welche unterschiedlich sind.Dafür solltest du erstmal definieren, wann ein Verzeichnis für dich unterschiedlich ist. (1) Wenn es die gleiche Anzahl an Dateien beinhaltet? (2) 1 und alle Dateien müssen die gleichen Namen haben? (3) 2 und alle Dateien müssen die gleichen Inhalte haben? Zitieren
allesweg Geschrieben 21. September 2005 Geschrieben 21. September 2005 ich verwende CloneSpy - die Homepage gibt im Mom nur den Download-Link an, deshalb mal die hier Zitieren
Welenreiter Geschrieben 21. September 2005 Autor Geschrieben 21. September 2005 Es sit die gleiche anzahl der Dateien. Der Inhalt ist mir egal, ich will die unteschieden in den namen wissen. z.b Ordner 1 Ordner2 start.bat start2.bat = Meldung Start.bat nicht in Ordner 2 Zitieren
.DenkeDranJoe Geschrieben 21. September 2005 Geschrieben 21. September 2005 Tataaa....mal wieder ein Job für den Total Commander ;-) Vorgehensweise : Linke Seite in den Ordner A wechseln Rechte Seite in den Ordner B wechseln Dann -> Befehle -> Verzeichnisse synchronisieren Kannst zusätzlich wählen : -Unterverzeichnisse vergleichen -nach Inhalt (binärer Vergleich) -Datum Ignorieren - Asymetrisch Du bekommst dann eine Liste die dir zeigt, welche Dateien gleich, ungleich bzw. welche von A nach B bzw. von B nach A kopiert werden müssen. Musst bloß vorsichtig bei der Option "Asymetrisch" sein. Das bedeutet : Angenommen du hast in Ordner A die Dateien 1,2 und 3 In Ordner B hast du 1,2,3,4. Synchronisiertst du von A nach B und hast die Option Asymetrisch gewählt, löscht er in Ordner B die Datei 4. Klingt evtl. verwirrend ;-), ist aber relativ leicht zu durchschauen. Download findest du hier : http://www.ghisler.com/ddownload.htm Zitieren
perdian Geschrieben 21. September 2005 Geschrieben 21. September 2005 Es sit die gleiche anzahl der Dateien. Der Inhalt ist mir egal, ich will die unteschieden in den namen wissen. Voila! package de.perdian.test; import java.io.File; import java.util.Collections; import java.util.HashSet; import java.util.Set; public class ListDirectoryDifferences { public static void main(String[] args) { File d1 = new File(args[0]); File d2 = new File(args[1]); Set<String> fileNames1 = ListDirectoryDifferences.createFileNameSet(d1); Set<String> fileNames2 = ListDirectoryDifferences.createFileNameSet(d2); for(String fileName1 : fileNames1) { if(!fileNames2.remove(fileName1)) { System.out.println("Datei " + fileName1 + " existiert nur in Verzeichnis " + d1.getAbsolutePath()); } } for(String remaningFileName : fileNames2) { System.out.println("Datei " + remaningFileName + " existiert nur in Verzeichnis " + d2.getAbsolutePath()); } } private static Set<String> createFileNameSet(File directory) { File[] files = directory.listFiles(); if(files == null) { return Collections.emptySet(); } else { Set<String> result = new HashSet<String>(files.length); for(File file : files) { result.add(file.getName()); } return result; } } } Zitieren
Welenreiter Geschrieben 22. September 2005 Autor Geschrieben 22. September 2005 Super. Danke für die ganze Hilfe! Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.