Ostatnio szukałem tego ^^. Ale jeszcze jedno pytanie. Co zrobić -k2n? Czy to dotyczy sortowania numerycznego? Dziękuję Ci.
αғsнιη
2
@KasiyA -kdefiniuje klucz sortowania. Szczegółowe informacje można znaleźć na stronie podręcznika man. -k2ndefiniuje klucz sortowania zaczynający się od drugiego pola i kończący się na końcu linii i czyni go kluczem numerycznym.
Stéphane Chazelas
0
użyj sortowania:
sort -n file1 > file2
-n, --numeric-sort
porównaj według wartości liczbowej ciągu
Nie, wszystkie te linie mają ten sam ranking, sort -nponieważ nie zaczynają się od liczby. Powodem, dla którego je sortuje, jest ostateczne sortowanie ostateczne (leksykalnie, nie numerycznie) dla linii o tym samym rankingu. To by się "$lvl=17"kiedyś ułożyło "$lvl=2".
Stéphane Chazelas
@ StéphaneChazelas dzięki za wskazanie.
Hackaholic
Parafrazując -ni -gsą tutaj zbędne, ponieważ dane wejściowe nie są liczbowe. Ta odpowiedź jest myląca, stąd opinia negatywna (zauważ również, że -gi długie opcje są specyficzne dla GNU).
Stéphane Chazelas
ale -g jest dobrym ogólnym sortowaniem numerycznym
Hackaholic
To wciąż do sortowania wartości liczbowych, z tą różnicą -n, że nie ogranicza się do liczb całkowitych dziesiętnych. Że nadal sortować "$lvl=17"przed "$lvl=2"jako część ostatniej instancji sortowania.
Stéphane Chazelas
0
Odkryłem, że po prostu biegniesz sort -h, to zadziała. Nazywają to --human-numberic-sort.
sort
na twoim File1, bez żadnych opcji, otrzymuję twój File2. Co robisz inaczej? Co pozostawiasz poza tym pytaniem?Odpowiedzi:
Lubię -V --version-sort: zachowuje się bardzo dobrze w wielu sytuacjach, mieszając ciągi znaków i liczby
Bardzo często korzystam z tej opcji ...
W pewnym kierunku,
ls -v
do sortowania według wersjils
.źródło
Musisz powiedzieć,
sort -n
aby posortować według części po=
:źródło
-k2n
? Czy to dotyczy sortowania numerycznego? Dziękuję Ci.-k
definiuje klucz sortowania. Szczegółowe informacje można znaleźć na stronie podręcznika man.-k2n
definiuje klucz sortowania zaczynający się od drugiego pola i kończący się na końcu linii i czyni go kluczem numerycznym.użyj sortowania:
-n, --numeric-sort
porównaj według wartości liczbowej ciągu
-g, - ogólne-sortowanie numeryczne
źródło
sort -n
ponieważ nie zaczynają się od liczby. Powodem, dla którego je sortuje, jest ostateczne sortowanie ostateczne (leksykalnie, nie numerycznie) dla linii o tym samym rankingu. To by się"$lvl=17"
kiedyś ułożyło"$lvl=2"
.-n
i-g
są tutaj zbędne, ponieważ dane wejściowe nie są liczbowe. Ta odpowiedź jest myląca, stąd opinia negatywna (zauważ również, że-g
i długie opcje są specyficzne dla GNU).-n
, że nie ogranicza się do liczb całkowitych dziesiętnych. Że nadal sortować"$lvl=17"
przed"$lvl=2"
jako część ostatniej instancji sortowania.Odkryłem, że po prostu biegniesz
sort -h
, to zadziała. Nazywają to--human-numberic-sort
.źródło
sort -n
to jest to, czego chcesz użyć. Sortuje się, gdy sortujemy liczby.sort -k 2 -n file1
źródło