Forum: PC Hard- und Software Textfile nach bestimmten Kriterien sortieren


von Penganton (Gast)


Lesenswert?

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.

von g457 (Gast)


Lesenswert?

> 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

von Nano (Gast)


Lesenswert?

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.

von Sebastian D. (minimalist)


Lesenswert?

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

von Zeno (Gast)


Lesenswert?

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.

von Zeno (Gast)


Lesenswert?

Ups da war einer mit Bash schon schnelle. Hätte nicht gedacht das das so 
einfach ist.

von Gerald K. (geku)


Lesenswert?

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/

von Penganton (Gast)


Lesenswert?

Danke euch allen, genießt den Feiertag. Ihr habt mir sehr geholfen. :-)

von Penganton (Gast)


Lesenswert?

Unter Open Office habe ich unter "Einfügen" ->"Tabelle aus Datei" die 
Daten einlesen können und weiter verarbeitet. Danke für den Tipp.

von Tu fix mit unix (Gast)


Lesenswert?

man awk

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
Noch kein Account? Hier anmelden.