Wenn ich ein einfaches Unix sortauf Ihrer Datei1 ohne Optionen ausführe, erhalte ich Ihre Datei2. Was machst du anders Was lässt du aus dieser Frage heraus?
Scott
Antworten:
17
Ich mag -V --version-sort: Es verhält sich sehr gut für viele Situationen, in denen Zeichenfolgen und Zahlen gemischt werden
sort -V
Ich benutze diese Option sehr oft ...
In irgendeiner Richtung ls -vfür die Versionssortierung ls.
Ich habe vor kurzem das gesucht ^^. Aber noch eine Frage: Was tun -k2n? Bezieht sich das auf die numerische Sortierung? Vielen Dank.
αғsнιη
2
@KasiyA -kdefiniert einen Sortierschlüssel. Weitere Informationen finden Sie in der Manpage. -k2nDefiniert einen Sortierschlüssel, der am zweiten Feld beginnt und am Ende der Zeile endet, und macht ihn zu einem numerischen Sortierschlüssel.
Stéphane Chazelas
0
benutze sort:
sort -n file1 > file2
-n, --numeric-sort
Vergleiche nach numerischem Wert der Zeichenfolge
Nein, alle diese Zeilen haben die gleiche Rangfolge, sort -nda sie nicht mit einer Zahl beginnen. Der Grund, warum sie sortiert werden, ist die vollständige Sortierung der letzten Zeile (lexikalisch, nicht numerisch) für Zeilen mit derselben Rangfolge. Das würde "$lvl=17"vorher sortieren "$lvl=2".
Stéphane Chazelas
@ StéphaneChazelas danke für den Hinweis.
Hackaholic
Um es zu paraphrasieren -nund -gsind hier redundant, da die Eingabe nicht numerisch ist. Diese Antwort ist also irreführend, daher die Abwertung (beachten Sie auch, dass -gund die langen Optionen GNU-spezifisch sind).
Stéphane Chazelas
aber -g ist gut allgemein-numerisch-sort
Hackaholic
Das ist immer noch zum Sortieren von numerischen Werten, der Unterschied -nbesteht darin, dass es nicht auf Dezimalzahlen beschränkt ist. Das würde noch "$lvl=17"vorher "$lvl=2"als Teil der letzten Sortierung sortieren.
Stéphane Chazelas
0
Ich habe festgestellt, dass du einfach rennst sort -h, es wird funktionieren. Sie nennen es --human-numberic-sort.
sort
auf Ihrer Datei1 ohne Optionen ausführe, erhalte ich Ihre Datei2. Was machst du anders Was lässt du aus dieser Frage heraus?Antworten:
Ich mag -V --version-sort: Es verhält sich sehr gut für viele Situationen, in denen Zeichenfolgen und Zahlen gemischt werden
Ich benutze diese Option sehr oft ...
In irgendeiner Richtung
ls -v
für die Versionssortierungls
.quelle
Sie müssen sagen
sort -n
, um das Teil nach dem zu sortieren=
:quelle
-k2n
? Bezieht sich das auf die numerische Sortierung? Vielen Dank.-k
definiert einen Sortierschlüssel. Weitere Informationen finden Sie in der Manpage.-k2n
Definiert einen Sortierschlüssel, der am zweiten Feld beginnt und am Ende der Zeile endet, und macht ihn zu einem numerischen Sortierschlüssel.benutze sort:
-n, --numeric-sort
Vergleiche nach numerischem Wert der Zeichenfolge
-g, --general-numeric-sort
quelle
sort -n
da sie nicht mit einer Zahl beginnen. Der Grund, warum sie sortiert werden, ist die vollständige Sortierung der letzten Zeile (lexikalisch, nicht numerisch) für Zeilen mit derselben Rangfolge. Das würde"$lvl=17"
vorher sortieren"$lvl=2"
.-n
und-g
sind hier redundant, da die Eingabe nicht numerisch ist. Diese Antwort ist also irreführend, daher die Abwertung (beachten Sie auch, dass-g
und die langen Optionen GNU-spezifisch sind).-n
besteht darin, dass es nicht auf Dezimalzahlen beschränkt ist. Das würde noch"$lvl=17"
vorher"$lvl=2"
als Teil der letzten Sortierung sortieren.Ich habe festgestellt, dass du einfach rennst
sort -h
, es wird funktionieren. Sie nennen es--human-numberic-sort
.quelle
sort -n
ist das, was Sie verwenden möchten. Es sortiert, während wir Zahlen sortieren.sort -k 2 -n file1
quelle