Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
8.4 Datenverwaltung 121<br />
Tabelle 8.3: Optionen für sort (Auswahl)<br />
Option<br />
Wirkung<br />
-b (blank) ignoriert führende Leerzeichen im Feldinhalt<br />
-d (dictionary) sortiert nach Wörterbuch-Kriterien, d. h. nur Buchstaben, Ziffern und<br />
Leerzeichen werden berücksichtigt<br />
-f (fold) keine Unterscheidung von Groß- und Kleinbuchstaben<br />
-i (ignore) nicht druckbare Zeichen werden ignoriert<br />
-k ⟨Feld⟩[,⟨Feld’⟩] (key) Sortiere gemäß ⟨Feld⟩ (bis einschließlich ⟨Feld’⟩)<br />
-n (numeric) betrachtet Feldinhalt als Zahl und sortiert nach dem numerischen<br />
Wert, führende Leerzeichen werden ignoriert<br />
-o datei (output) schreibt Arbeitsergebnis in eine Datei, deren Name hier mit der Ursprungsdatei<br />
übereinstimmen darf!<br />
-r (reverse) sortiert absteigend, also von Z nach A<br />
-t⟨Zeichen⟩ (terminate) das ⟨Zeichen⟩ dient als Feldtrennzeichen<br />
-u (unique) gibt nur die erste einer Folge von identischen Zeilen aus<br />
$ sort -br -k 2.2 teilnehmer.dat<br />
Fluschinsky Käthe Sportfreunde Renntal 57 Damen<br />
Schulz Hugo SV Schnaufenberg 123 Herren<br />
Flöttmann Fritz Sportfreunde Renntal 217 Herren<br />
von Traben Gesine TV Jahnstein 26 Damen<br />
Rasbichel Ulla TSV Lahmhausen 117 Damen<br />
Schwitz Sieglinde Sportfreunde Renntal 93 Damen<br />
Schleicher Detlef TSV Lahmhausen 13 Herren<br />
Langbein Leni SV Schnaufenberg 55 Damen<br />
Rasbichel Katja TSV Lahmhausen 119 Damen<br />
Springinsfeld Karlheinz TV Jahnstein<br />
154 Herren<br />
Zielinger Hannes TV Jahnstein 45 Herren<br />
Hier wird die Datei teilnehmer.dat absteigend (-r) nach dem zweiten Zeichen der<br />
zweiten Tabellenspalte, also dem zweiten Buchstaben <strong>des</strong> Vornamens, sortiert<br />
(sehr sinnvoll!). Auch in diesem Fall ist es erforderlich, führende Leerzeichen mit<br />
-b zu ignorieren. (Der Schönheitsfehler aus Übung 8.14 manifestiert sich auch hier<br />
noch.)<br />
Mit der Option -t (engl. terminate, »begrenzen«) können Sie statt <strong>des</strong> Leerzeichens<br />
beliebige andere Trennzeichen festlegen. <strong>Die</strong>s ist fundamental eine gute andere Trennzeichen<br />
Idee, weil die zu sortierenden Felder dann Leerzeichen enthalten dürfen. Hier ist<br />
eine bequemer zu verwendende (wenn auch schwerer zu lesende) Fassung unserer<br />
Beispieldatei:<br />
Schulz:Hugo:SV Schnaufenberg:123:Herren<br />
Schleicher:Detlef:TSV Lahmhausen:13:Herren<br />
Flöttmann:Fritz:Sportfreunde Renntal:217:Herren<br />
Springinsfeld:Karlheinz:TV Jahnstein:154:Herren<br />
von Traben:Gesine:TV Jahnstein:26:Damen<br />
Rasbichel:Ulla:TSV Lahmhausen:117:Damen<br />
Schwitz:Sieglinde:Sportfreunde Renntal:93:Damen<br />
Rasbichel:Katja:TSV Lahmhausen:119:Damen<br />
Langbein:Leni:SV Schnaufenberg:55:Damen<br />
Zielinger:Hannes:TV Jahnstein:45:Herren<br />
Fluschinsky:Käthe:Sportfreunde Renntal:57:Damen<br />
<strong>Die</strong> Sortierung nach dem Vornamen liefert nun mit »LC_COLLATE=de_DE sort -t:<br />
-k2,2« korrekte Ergebnisse. Auch wird es leichter, zum Beispiel nach der Start-<br />
Copyright © 2012 <strong>Linup</strong> <strong>Front</strong> GmbH