Hallo,
angenommen ich habe eine Datei mit dieser Struktur:
abcde -5.1 2017-01-17 19:00:00 abcde -8.1 2017-01-17 18:30:00 abcde -9.9 2017-01-17 18:30:00 abcde -5.3 2014-01-17 11:30:00 abcde -2.1 2015-01-17 20:00:00 abcde -5.1 2017-01-17 20:00:00 abcde -9.8 2017-01-17 18:30:00 abcde 3.1 2017-02-17 15:00:00 abcde -2.1 2017-01-16 20:00:00
Ich möchte die Datei sicher nach der 3./4. Spalte (also dem Datum+Zeit) sortieren. Ich denke der Timestamp ist dafür sicher gewählt!?!?! Dies bewerkstellige ich mit:
1 | sort -k3 file.txt |
abcde -5.3 2014-01-17 11:30:00 abcde -2.1 2015-01-17 20:00:00 abcde -2.1 2017-01-16 20:00:00 abcde -8.1 2017-01-17 18:30:00 abcde -9.8 2017-01-17 18:30:00 abcde -9.9 2017-01-17 18:30:00 abcde -5.1 2017-01-17 19:00:00 abcde -5.1 2017-01-17 20:00:00 abcde 3.1 2017-02-17 15:00:00
Jetzt ist es sehr wichtig das ich Zeilen mit gleichen Datum/Zeit-Stempel rausschmeisse. Das wäre ja bei 2017-01-17 18:30:00 der Fall. Wichtig ist das unbedingt immer die letzte also unterste Zeile von denen mit gleichen Timestamp aus file.txt behalten wird. Also in diesem Fall:
abcde -9.8 2017-01-17 18:30:00
Da scheint er mir ja schon die Reihenfolge durcheinander zu hauen
Wende ich jetzt uniq an, dann behält er die erste Zeile, die ja nicht wirklich immer sicher die letzte aus file.txt war:
1 | sort -k3 -u file.txt |
abcde -5.3 2014-01-17 11:30:00 abcde -2.1 2015-01-17 20:00:00 abcde -2.1 2017-01-16 20:00:00 abcde -8.1 2017-01-17 18:30:00 abcde -5.1 2017-01-17 19:00:00 abcde -5.1 2017-01-17 20:00:00 abcde 3.1 2017-02-17 15:00:00
Geht das irgendwie?
lg sappy