Hallo zusammen, ich lege mir gerade voellig die Karten mit folgendem Problem: In File1 liegen beispielsweise folgende Zeilen: aaacc|irgendwas aaa-x|sonstwas aaa-a|nochirgendwas Wie bekomme ich es hin, dass bei einem "sort" das "-" mit ausgewertet gewertet wird? Die Ausgabe sollte dann so aussehen: aaa-a|nochirgendwas aaa-x|sonstwas aaacc|irgendwas Ich versuche mich hier an sort (coreutils) 5.2.1 mit allen sinnvollen Optionen, das Ergebnis sieht immer so aus: aaa-a|nochirgendwas aaacc|irgendwas aaa-x|sonstwas sort -t"|" +0 File1 > File2 Das komplette File wird nach Feld0 alphabetisch sortiert, jedoch wird dabei das "-" ignoriert! Wer hat einen Tip? MfG Th. Moritz -- Hallo... Sie muessen sich verwaehlt haben, ich habe gar kein Telefon!
On Friday 04 November 2005 23:39, Thomas Moritz wrote:
Hallo zusammen, ich lege mir gerade voellig die Karten mit folgendem Problem: In File1 liegen beispielsweise folgende Zeilen:
aaacc|irgendwas aaa-x|sonstwas aaa-a|nochirgendwas
Wie bekomme ich es hin, dass bei einem "sort" das "-" mit ausgewertet gewertet wird? Die Ausgabe sollte dann so aussehen:
aaa-a|nochirgendwas aaa-x|sonstwas aaacc|irgendwas
Ich versuche mich hier an sort (coreutils) 5.2.1 mit allen sinnvollen Optionen, das Ergebnis sieht immer so aus:
aaa-a|nochirgendwas aaacc|irgendwas aaa-x|sonstwas
sort -t"|" +0 File1 > File2
Das komplette File wird nach Feld0 alphabetisch sortiert, jedoch wird dabei das "-" ignoriert! Wer hat einen Tip?
Wenn's Ruby sein darf: ruby -e 'puts ARGF.readlines.sort_by { |a| a[/^[^|]*(?=|)/] }' File1 > File2 Grüße, Stefan
Hi Thomas, Hilft dir das? LANG="POSIX" sort FILE1 oder LANG="C" sort FILE1 Gruß, Michael (Sorry für die PM.)
Hallo, Am Fri, 04 Nov 2005, Thomas Moritz schrieb:
ich lege mir gerade voellig die Karten mit folgendem Problem: In File1 liegen beispielsweise folgende Zeilen:
aaacc|irgendwas aaa-x|sonstwas aaa-a|nochirgendwas
Wie bekomme ich es hin, dass bei einem "sort" das "-" mit ausgewertet gewertet wird?
Vergleiche: LC_COLLATE=de_DE sort LC_COLLATE=C sort LC_COLLATE=POSIX sort Siehe auch 'pinfo --node Locales libc' zu den Details... -dnh, ich weiss schon, warum ich LC_COLLATE als einzige LC_* Variable extra gesetzt habe... $ echo $LC_COLLATE POSIX -- Wußtest Du, daß Menschen fliegen können? Doch wirklich. Geh auf ein hohes Gebäude, spring über das Geländer, und Du wirst sehen: es funktioniert. Völlig problemlos. Oder hat Dir schon mal jemand aus erster Hand berichtet, bei ihm habe es nicht geklappt? Siehst Du. -- Erik Meltzer
Am Freitag, 4. November 2005 23:39 meinte Thomas Moritz: Besten Dank an alle fuer die schnelle Hilfe! Mit POSIX ist die Welt in Ordnung. Das kommt davon, wenn man mal schnell etwas zusammenstricken will und vor lauter Optionssuche das Ende von "man sort" uebersieht. Dort steht der Warnhinweis ausdruecklich drin. Sorry! Schoenes Wochenende, MfG Th. Moritz -- Zahme Voegel singen von der Freiheit, wilde Voegel fliegen.
participants (4)
-
David Haller
-
Michael Wenger
-
Stefan Lang
-
Thomas Moritz