Lassen Sie mich erklären:
Angenommen, ich habe einige Keywords mit der Häufigkeit ihrer Verwendung:
12 Hi
7 Hash
7 C++
9 Superuser
17 Stackoverflow
9 LaTeX
42 Life
9 Ubuntu
Ich möchte, dass diese Daten nach Häufigkeit in absteigender Reihenfolge sortiert werden. Wenn es gleiche Werte gibt, sollte die zweite Spalte in aufsteigender Reihenfolge verwendet werden.
sort -n -r foo.txt
Ist der erste Teil dann aber zweite Spalte auch reversed
:
42 Life
17 Stackoverflow
12 Hi
9 Ubuntu
9 Superuser
9 LaTeX
7 Hash
7 C++
Wie kann ich die folgenden Ergebnisse erzielen?
42 Life
17 Stackoverflow
12 Hi
9 LaTeX
9 Superuser
9 Ubuntu
7 C++
7 Hash
Ich denke, ich muss -k
argumentieren, aber ich kann nicht herausfinden, wie!
Ich möchte wissen, wie dies mit alleinigen sort
Befehlen von getan werden kann bash
. Wenn dies jedoch nicht nur mit möglich ist sort
, sollten andere Befehle mit der Bourne-Shell kompatibel sein.
text-processing
sort
Pouya
quelle
quelle
-g
(allgemein numerisch) anstelle von-n
numerischen Vergleichen sicherer: Sie funktioniert sowohl für Gleitkommazahlen als auch für ganze Zahlen korrekt.Antworten:
Geben Sie die Sortierschlüssel separat mit den Kriterien an:
Dies gibt an, dass der erste Schlüssel numerisch in umgekehrter Reihenfolge sortiert wird, während der zweite Schlüssel gemäß der Standardsortierreihenfolge sortiert wird.
Aus POSIX sortieren :
Dies würde erzeugen:
quelle