Gibt es unter Windows Software, die die Duplizierung von Dateien in einem Ordner verhindert?

Gibt es unter Windows Software, die die Duplizierung von Dateien in einem Ordner verhindert?

Nehmen wir an, ich habe zwei Dateien c:\f1\data.txtund c:\f2\data.txt.

Wenn ich den Befehl ausgebe

copy c:\f2\data.txt c:\f1\data\

Ich erhalte eine Warnung über das mögliche Überschreiben. Ich erhalte dieselbe Warnung als Dialogfeld, wenn ich versuche, es grafisch per Drag & Drop in data.txtzu verschieben. Dieses Verhalten ist darauf zurückzuführen, dass die Dateien denselben Namen haben ( ). Ich bin mit diesem Verhalten zufrieden, möchte es aber auch auf Dateien ausweitenc:\f2\c:\f1data.txtmit unterschiedlichen Namen aber gleichem Inhalt.

Nehmen wir an, ich habe zwei Dateien c:\f1\foo.txtund c:\f2\bar.txtund sagen wir, foo.txtenthält eine Zeile Hello World!und bar.txtenthält eine Zeile Hello World!, also foo.txtund bar.txthaben den gleichen Inhalt, jetzt der Befehl

copy c:\f2\bar.txt c:\f1\

wird gelingen, aber ich hätte lieber einen Misserfolg.

Ich wäre froh, dieses Verhalten nur für einen Ordner zu haben. Gibt es eine Software, mit der ich mein Ziel erreichen kann?

Antwort1

Mir fallen keine Programme ein, die dies tun.

Sie können ganz einfach ein Skript oder eine Anwendung schreiben, die vor dem Kopieren einen Vergleich durchführt und Sie warnt, wenn die Daten identisch sind. Jedoch... es gibt immer eine Einschränkung. Wie führen Sie den Vergleich durch? Da Sie mit Textdateien arbeiten, können die Datenerscheinengleich zu sein, ist es aber nicht. Nehmen wir die folgenden Beispiele:

Das ist ein Test.

Und

Das ist ein Test. 

Die Zeilen sehen genau gleich aus. Für einen Computer sind sie jedoch unterschiedlich. Klicken Sie mit der Maus, halten Sie die linke Maustaste gedrückt und markieren Sie das erste Beispiel. Markieren Sie dann die zweite Zeile. Sehen Sie den Unterschied? Nach dem Punkt im zweiten Beispiel steht ein Leerzeichen. Diese Zeichenfolgen übermitteln zwar die gleichen Informationen, sind aber nicht identisch. Selbst ein Unterschied von einem einzigen Zeichen, 1 Byte, würde das Kopieren ermöglichen. Wenn Sie damit einverstanden sind, ist die Anwendung oder das Skript super einfach. Ich würde empfehlen, einfach die Hashwerte der beiden Dateien abzurufen und diesen Wert zu vergleichen. Wenn die Werte gleich sind, warnen Sie und lehnen Sie das Kopieren ab.

Antwort2

UltraComparekönnen tun, was Sie wollen, wenn Sie einige Synchronisierungsregeln definieren, wie Sie sehen könnenHier.

verwandte Informationen