Hallo nette Foristen, ich möchte den Inhalt eines Textfiles sortieren. Das ist ungefähr so aufgebaut: Zahl.TextLeerzeichenZahlLeerzeichenBindestrichLeerzeichenBindestrichText nach dem sortiert werden soll Wie macht man das? Stehe gerade auf der Rolle.
> Wie macht man das? Stehe gerade auf der Rolle.
man sort. Ggf. deine ungenannten Sortierregeln genauer speckifizieren,
vorzugsweise so dass sort es direkt kann ;-)
HTH
Penganton schrieb: > Hallo nette Foristen, ich möchte den Inhalt eines Textfiles > sortieren. > > Das ist ungefähr so aufgebaut: > > Zahl.TextLeerzeichenZahlLeerzeichenBindestrichLeerzeichenBindestrichText > nach dem sortiert werden soll > > Wie macht man das? Stehe gerade auf der Rolle. Mach es dir einfach. Markiere den gesamten Text und Copy & Paste ihn in Libre Calc. Das Leerzeichen, den Punkt und die Bindestriche kannst du als Trennzeichen nutzen, relevant dürfte nur Zahl, Text, Zahl und Text sein und dafür hast du dann in Libre Calc dann ja eine eigene Spalte.
sort -t "-" -k2 deinedaten.dat Test mit Zufallsdaten: Eingabe:
1 | 4.wemgnnfaxd 61 - -htzowortj |
2 | 7.tb 08 - -afevj |
3 | 9.ebcrcsn 05 - -qda |
4 | 7.wusgklfp 00 - -cexmh |
5 | 8.dqn 49 - -kkej |
6 | 1.ef 46 - -hltlq |
7 | 8.igs 56 - -tgta |
8 | 3.pnawfvzne 58 - -lcysejj |
9 | 5.afjuja 35 - -kj |
10 | 8.yey 21 - -scgfpqumr |
Ausgabe:
1 | 7.tb 08 - -afevj |
2 | 7.wusgklfp 00 - -cexmh |
3 | 1.ef 46 - -hltlq |
4 | 4.wemgnnfaxd 61 - -htzowortj |
5 | 5.afjuja 35 - -kj |
6 | 8.dqn 49 - -kkej |
7 | 3.pnawfvzne 58 - -lcysejj |
8 | 9.ebcrcsn 05 - -qda |
9 | 8.yey 21 - -scgfpqumr |
10 | 8.igs 56 - -tgta |
Die Zerichenkombination Bindestrich Leerzeichen Bindestrich z.B. durch ~ ersetzen (Das Zeichen sollte ansonsten nicht im Text vorkommen). Dann die Datei mit einer Tabellenkalkulation einlesen und ~ als Feldtrenner benutzen. Das was links von der Tilde steht steht dann in spalte A, der Text rechts von der Tilde in B. Beide Spalten markieren und nach B sortieren. Die 2 Spalten nach Text exportieren und als Trenner ~ benutzen. Danach ~ durch Bindestrich Leerzeichen Bindestrich ersetzen. Vielleicht etwas umständlich dafür aber mit Hausmitteln schnell lösbar. Wer programmieren kann schreibt sich halt ein Progrämmle. Wenn Du in Linux fit bist, tut es vielleich auch eine mehr oder weniger kryptische Bashbefehlszeile.
Ups da war einer mit Bash schon schnelle. Hätte nicht gedacht das das so einfach ist.
Linux sort command ‘-k pos1[,pos2]’‘--key=pos1[,pos2]’ Specify a sort field that consists of the part of the line between pos1 and pos2 (or the end of the line, if pos2 is omitted), inclusive. https://www.gnu.org/software/coreutils/manual/html_node/sort-invocation.html https://linuxhint.com/sort-command-in-linux-with-examples/
Danke euch allen, genießt den Feiertag. Ihr habt mir sehr geholfen. :-)
Unter Open Office habe ich unter "Einfügen" ->"Tabelle aus Datei" die Daten einlesen können und weiter verarbeitet. Danke für den Tipp.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.