Рішення:
sort -k 2 -n filename
більш багатослівно записується як:
sort --key 2 --numeric-sort filename
Приклад:
$ cat filename
A 12
B 48
C 3
$ sort --key 2 --numeric-sort filename
C 3
A 12
B 48
Пояснення:
-k # - цей аргумент вказує перший стовпець, який буде використовуватися для сортування. (зауважте, що стовпець тут визначається як поле з розділеним пробілом; аргумент -k5буде сортований починаючи з п’ятого поля у кожному рядку, а не з п’ятого символу у кожному рядку)
-n - ця опція вказує "числовий сортування", тобто колонка має бути інтерпретована як рядок чисел, а не текст.
Більше:
Інші поширені варіанти включають:
- -r - ця опція скасовує порядок сортування. Він також може бути записаний як - зворотний .
- -i - Цей параметр ігнорує символи, що не друкуються. Його також можна записати як --ignore-nonprint .
- -b - Ця опція ігнорує провідні пробіли, що зручно, оскільки пробіли використовуються для визначення кількості рядків. Він також може бути записаний як -ignore-Lead-blanks .
- -f - Цей параметр ігнорує регістр букв. "А" == "а". Він також може бути записаний як --ignore-case .
- -t [новий роздільник] - Цей параметр змушує попередню обробку використовувати оператор, відмінний від місця. Він також може бути записаний як --field-separator .
Є й інші варіанти, але це найпоширеніші та корисні, якими я користуюсь часто.