Zeilen vergleichen

Post Reply
Message
Author
seddist

Zeilen vergleichen

#1 Post by seddist »

Hallo,

ich habe jetzt eine Liste, die folgendes Format aufweist:

1234 etwas text
1234 anderer text
2343 noch etwas text

Diese Liste ist nach Spalte 1 sortiert und jetzt würde ich gerne die erste Spalte (die Zahlen) auf doubletten überprüfen.

Wenn also Zeile 1 den gleichen Zahlenwert in der ersten Spalte wie Zeile 2 hat, dann soll sie gelöscht werden.
Dann wird Zeile 2 mit Zeile 3 verglichen usw. usf.

Gibt es da eine Möglichkeit? Ich bin mit while nicht wirklich weitergekommen.
Ich könnte die Liste wie guten alten Basic Zeiten auch durchnummerieren, wäre kein Problem (wäre dann halt ein Vergleich der 2ten Spalte).

komsomolze
Posts: 430
Joined: 03. Mar 2006 23:16

#2 Post by komsomolze »

Hallo,

zuerst ein Aufstellen der Doublettenliste? (zu Fuß)

Code: Select all

awk '{print $1}' | sort | uniq -c | awk '$1!="1" {print $2} '
Die Liste muß dann wohl mit 'for' durchgearbeitet werden.
'grep -n ... | tail -1' die letzte Zeilennummer des Vorkommens.
Damit als "bis"-Adresse an ein sed- oder awk-Inputfile verfüttert wird in einem Schritt die Datei geändert und abschließend werden die leeren Zeilen entfernt.

http://www-user.tu-chemnitz.de/~hot/uni ... n/awk.html
BEGIN und END?

Post Reply