Odpowiedzi:
Musisz powiedzieć, sort -naby posortować według części po =:
sort -t = -k 2n
-k2n? Czy to dotyczy sortowania numerycznego? Dziękuję Ci.
-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.
użyj sortowania:
sort -n file1 > file2
-n, --numeric-sort
porównaj według wartości liczbowej ciągu
sort -g file1 > file 2
-g, - ogólne-sortowanie numeryczne
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".
-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).
-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.
sort -h file1 > file2
sort -nto jest to, czego chcesz użyć. Sortuje się, gdy sortujemy liczby.sort -k 2 -n file1
sortna twoim File1, bez żadnych opcji, otrzymuję twój File2. Co robisz inaczej? Co pozostawiasz poza tym pytaniem?