Відповіді:
Вам потрібно сказати sort -n
сортувати за деталлю після =
:
sort -t = -k 2n
-k2n
? Це стосується числового сортування? Дякую тобі.
-k
визначає ключ сортування. Детальну інформацію див. На сторінці чоловіка. -k2n
визначає ключ сортування, починаючи з другого поля і закінчуючи в кінці рядка, і робить його числовим ключем сортування.
використовувати сортування:
sort -n file1 > file2
-n, -
числове порівняння порівняння відповідно до числового значення рядка
sort -g file1 > file 2
-g, - загально-числовий-роду
sort -n
оскільки вони не починаються з числа. Причина їх сортування - це повний рядок повного рядка (лексично, а не чисельно), зроблений для рядків з однаковим ранжуванням. Це б сортувати "$lvl=17"
раніше "$lvl=2"
.
-n
і -g
тут зайві, оскільки вхід не є числовим. Тож ця відповідь вводить в оману, звідси і зворотний результат (також зауважте, що -g
і довгі варіанти є специфічними для GNU).
-n
тому, що це не обмежується десятковими цілими числами. Це все одно було б сортувати "$lvl=17"
раніше, "$lvl=2"
як частину останнього сортування.
Я виявив, що ви просто запустіть sort -h
, це спрацює. Вони це називають --human-numberic-sort
.
sort -h file1 > file2
sort -n
це те, що ви хочете використовувати. Він сортує, коли ми сортуємо числа.sort -k 2 -n file1
sort
у вашому File1, без варіантів, я отримую ваш File2. Що ти робиш по-іншому? Що ви залишаєте без цього питання?