
93578
05.10.2010, aktualisiert um 12:51:08 Uhr
2 Texdateien (eine kleine und eine große) zeilenweise vergleichen und die doppelte Zeilen aus der kleinen Datei löschen.
Hallo an alle!
Ich habe 2 Text-Dateien: Datei1.txt und Datei2.txt. Beide haben das gleiche Struktur:
Datei 1 (insgesamt ca. 300 Zeilen):
123456789a
123456789b
123456789c
123456789d
123456789e
Datei 2: (insgesamt ca. 21.000.000 Zeilen)
012345678a
012345678b
012345678c
123456789a
012345678d
012345678e
012345678f
012345678g
123456789e
012345678h
Nun will ich die kleine Datei (Datei1 ) mit der großen Datei (Datei 2) vergleichen, um zu überprüfen, ob in der kleinen Datei Duplikate aus der großen Datei vorhanden sind. Und falls das der Fall ist, will ich diese Duplikate aus der kleinen Datei löschen. Am Ende soll sie so aussehen:
Datei1:
123456789b
123456789c
123456789d
Dafür benutzte ich das Befehl "fc" über cmd. Nun der bricht mit der Meldung ab, dass die Dateiunterschied zu groß ist.
Ich will es mit diff und uniq Versuchen (Windows-UNIX), weiß aber nicht wie.
Für Ihre Hilfe werde ich sehr dankbar!
Sergio
Ich habe 2 Text-Dateien: Datei1.txt und Datei2.txt. Beide haben das gleiche Struktur:
Datei 1 (insgesamt ca. 300 Zeilen):
123456789a
123456789b
123456789c
123456789d
123456789e
Datei 2: (insgesamt ca. 21.000.000 Zeilen)
012345678a
012345678b
012345678c
123456789a
012345678d
012345678e
012345678f
012345678g
123456789e
012345678h
Nun will ich die kleine Datei (Datei1 ) mit der großen Datei (Datei 2) vergleichen, um zu überprüfen, ob in der kleinen Datei Duplikate aus der großen Datei vorhanden sind. Und falls das der Fall ist, will ich diese Duplikate aus der kleinen Datei löschen. Am Ende soll sie so aussehen:
Datei1:
123456789b
123456789c
123456789d
Dafür benutzte ich das Befehl "fc" über cmd. Nun der bricht mit der Meldung ab, dass die Dateiunterschied zu groß ist.
Ich will es mit diff und uniq Versuchen (Windows-UNIX), weiß aber nicht wie.
Für Ihre Hilfe werde ich sehr dankbar!
Sergio
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 152387
Url: https://administrator.de/forum/2-texdateien-eine-kleine-und-eine-grosse-zeilenweise-vergleichen-und-die-doppelte-zeilen-aus-der-kleinen-152387.html
Ausgedruckt am: 18.04.2025 um 23:04 Uhr
4 Kommentare
Neuester Kommentar
Moin takitano,
ich denke, du machst dir und der armen fc.exe unnötig Arbeit mit dieser Strategie des "Prüfens jeder Zeile und doppelte Löschen"
Vergleiche bzw. durchsuche lieber mit FindStr.exe und Schalter /G die große Datei auf alle Zeile Zeilen, die in der kleinen Datei enthalten sind und erzeuge als Ergebnis eine neue Datei.
Grüße
Biber
ich denke, du machst dir und der armen fc.exe unnötig Arbeit mit dieser Strategie des "Prüfens jeder Zeile und doppelte Löschen"
Vergleiche bzw. durchsuche lieber mit FindStr.exe und Schalter /G die große Datei auf alle Zeile Zeilen, die in der kleinen Datei enthalten sind und erzeuge als Ergebnis eine neue Datei.
Grüße
Biber
moin takitano,
nur um dem Beispiel von Biber nachzugehen. ( > ist der Prompt)
gibt Dir alle Doppelten Vorkommnisse aus
ist Dein gewünschte Ausgabe
ist Dein Gewünschtes Ergebnis in der Datei
Gruß Phil
nur um dem Beispiel von Biber nachzugehen. ( > ist der Prompt)
>findstr /g:gross.txt klein.txt
123456789a
123456789e
>findstr /v /g:gross.txt klein.txt
123456789b
123456789c
123456789d
>findstr /v /g:gross.txt klein.txt>neu_aus_klein.txt
Gruß Phil