logo

Як сортувати рядки в текстових файлах у Linux | Команда сортування

Команда SORT використовується для сортування файлу, упорядковуючи записи в певному порядку. За замовчуванням команда сортування сортує файл, припускаючи, що вміст є ASCII. Використання параметрів у команді сортування також можна використовувати для числового сортування.

  • Команда SORT сортує вміст текстового файлу рядок за рядком.
  • sort — це стандартна програма командного рядка, яка друкує рядки свого введення або конкатенації всіх файлів, перелічених у списку аргументів, у відсортованому порядку.
  • Команда sort — це утиліта командного рядка для сортування рядків текстових файлів. Він підтримує сортування за алфавітом, у зворотному порядку, за числом, за місяцем, а також може видаляти дублікати.
  • Команда сортування також може сортувати за елементами, розташованими не на початку рядка, ігнорувати регістр і повертати, чи відсортовано файл чи ні. Сортування виконується на основі одного або кількох ключів сортування, отриманих із кожного рядка введення.
  • За замовчуванням весь вхід береться як ключ сортування. Пробіл є роздільником полів за замовчуванням.

Команда сортування має такі функції, як зазначено нижче:

  1. Рядки, що починаються з цифри, з’являться перед рядками, що починаються з літери.
  2. Рядки, що починаються з літери, яка з’являється раніше в алфавіті, з’являться перед рядками, що починаються з літери, яка з’являється пізніше в алфавіті.
  3. Рядки, що починаються з великої літери, з’являться перед рядками, які починаються з тієї самої літери в нижньому регістрі.

Зміст



Синтаксис команди сортування в Linux

тут,

' параметри ‘ стосуються різних позначок і параметрів, які можна використовувати для налаштування поведінки сортування, а ‘file’ — це ім’я файлу, який потрібно сортувати.

Якщо файл не вказано, ‘ сортувати ‘ читає зі стандартного введення.

Параметри, доступні в команді сортування

Опції

опис

Визначає вихідний файл для відсортованих даних. Функціонально еквівалентно переспрямуванню виводу у файл.

Сортує дані у зворотному порядку (за спаданням).

-п

Сортує файл за числом (інтерпретує дані як числа).

mvc з java

-Немає

Сортує файл із числовими даними у зворотному порядку. Поєднує параметри -n і -r.

Сортує таблицю за певним номером стовпця.

-c

Перевіряє, чи файл уже відсортовано, і повідомляє про будь-які порушення.

іменування для java

Сортує та видаляє повторювані рядки, створюючи унікальний відсортований список.

Сортує за назвами місяців.

Як сортувати рядки в текстових файлах у Linux за допомогою команди sort

Почнемо з простого прикладу. Розглянемо файл під назвою «file.txt» із таким вмістом:

cat file.txt>
Відображення вмісту файлу за допомогою команди cat

Відображення вмісту файлу за допомогою команди cat

Тут ми використали команду cat для відображення вмісту всередині імені файлу «file.txt».

Щоб відсортувати рядки за алфавітом, ви можете скористатися такою командою:

sort file.txt>
сортувати рядки в тексті за допомогою команди sort

сортувати рядки в тексті за допомогою команди sort

Примітка: Ця команда фактично не змінює вхідний файл, тобто file.txt. Ми можемо перевірити це за допомогою кішка команда .

реальний файл не змінюється

реальний файл не змінюється

Як відсортувати рядки в текстових файлах за допомогою верхнього та нижнього регістру за допомогою команди sort

Функція сортування зі змішаним файлом, тобто великим і нижнім регістрами: Якщо у нас є змішаний файл як з великими, так і з малими літерами, тоді спочатку будуть відсортовані великі літери, а потім малі.

приклад: Якщо у нас є текстовий файл, який містить символи верхнього та нижнього регістру.

cat mix.txt>
Відображення вмісту файлу за допомогою команди cat

Відображення вмісту файлу за допомогою команди cat

порівняння рядків java

Тут ми використали команду cat для відображення вмісту всередині імені файлу «mix.txt».

Щоб відсортувати рядки за алфавітом, які містять великі та малі літери, ви можете скористатися такою командою:

sort mix.txt>
сортувати рядки у верхньому та нижньому регістрах у тексті за допомогою команди sort

сортувати рядки у верхньому та нижньому регістрах у тексті за допомогою команди sort

Як виконати числове сортування в рядках у текстових файлах за допомогою команди sort

За замовчуванням «сортування» розглядає числа як текст і сортує їх відповідно. Якщо ви хочете виконати числове сортування, використовуйте параметр «-n»:

cat file1.txt>
Відображення вмісту файлу за допомогою команди cat

Відображення вмісту файлу за допомогою команди cat

Тут ми використали команду cat для відображення вмісту всередині імені файлу «file1.txt».

Тепер ми відсортуємо числові дані за допомогою команди sort наступним чином.

sort file1.txt>
сортування числових даних у файлі Linux

сортування числових даних у файлі Linux

Як відсортувати рядки у зворотному порядку у файлі Linux за допомогою команди sort

Щоб відсортувати у зворотному порядку, ви можете скористатися опцією «-r»:

приклад : Якщо ми хочемо відсортувати рядки у файлі Linux у зворотному порядку, ми можемо використати команду сортування з опцією -r, припустімо, що у нас є ім’я файлу example.txt, як показано нижче.

cat example.txt>
використання команди cat для відображення вмісту файлу

використання команди cat для відображення вмісту файлу

Тепер сортуємо рядки у зворотному порядку за допомогою ` -р` параметр у команді sort

sort -r example.txt>
сортування рядків у зворотному порядку за допомогою -r з командою sort

сортування рядків у зворотному порядку за допомогою -r з командою sort

Як сортувати певні файли у файлах Linux за допомогою команди sort

Уявіть, що у вас є файл під назвою Employee_data.txt, який містить інформацію про співробітників у форматі, розділеному табуляцією. Кожен рядок представляє запис із такими деталями, як ідентифікатор працівника, ім’я, відділ і зарплата, розділені табуляціями. Ви хочете впорядкувати ці дані на основі відділу та відобразити результати в алфавітному порядку.

Наприклад : якщо ім’я нашого файлу – employee_data.txt, а вміст у ньому такий.

cat employee_data.txt>
Відображення вмісту файлу за допомогою команди cat

Відображення вмісту файлу за допомогою команди cat

штати в США

Щоб досягти цього, ви можете скористатися командою «сортувати».

sort -k3 employee_data.txt>

Пояснення:

-k3 : ця опція вказує на те, що сортування має виконуватися на основі третього стовпця (Відділ).

сортування певного стовпця за допомогою команди sort

сортування певного стовпця за допомогою команди sort

У цьому прикладі записи про співробітників тепер відсортовано в алфавітному порядку на основі стовпця «Відділ». Команда «сортувати» з настроюваним роздільником дозволяє ефективно впорядковувати й аналізувати дані, розділені табуляцією, що робить її цінним інструментом для керування структурованою інформацією в різних сценаріях.

Застосування та використання команди sort:

  1. Він може сортувати будь-який тип файлу, будь то файл таблиці, текстовий файл, числовий файл і так далі.
  2. Сортування можна здійснювати безпосередньо з одного файлу в інший, не перешкоджаючи поточній роботі.
  3. Сортування файлів таблиці на основі стовпців стало простіше та легше.
  4. Стільки варіантів доступно для сортування всіма можливими способами.
  5. Найвигідніше використання полягає в тому, що певний файл даних можна використовувати багато разів, оскільки у наданому вхідному файлі не вносяться зміни.
  6. Вихідні дані завжди в безпеці та без перешкод.

Часте запитання про команду сортування

Чи можна використовувати команду сортування для сортування файлів у порядку спадання за умовчанням?

Ні, команда сортування за замовчуванням сортує файли в порядку зростання. Для досягнення порядку спадання слід використовувати опцію «-r».

Як я можу відсортувати файл на основі певного стовпця за допомогою команди сортування?

Щоб відсортувати файл за певним стовпцем, використовуйте опцію «-k», за якою слідує номер стовпця.

Наприклад,

sort -k 2 data.txt>

Це буде відсортовано на основі другого стовпця.

Яка різниця між використанням параметра «-o» та перенаправленням виводу у файл під час використання команди «sort»?

Обидва методи досягають однакового результату збереження відсортованого виводу у файл. Параметр «-o» дозволяє вказати вихідний файл безпосередньо в команді під час перенаправлення (наприклад, ` sort file.txt>output.txt`> ) досягає того самого результату.

Як я можу перевірити, чи файл уже відсортовано за допомогою команди «sort»?

Використовуйте параметр «-c» із командою «сортувати» (наприклад, sort -c file.txt> ). Якщо файл уже відсортовано, результату не буде. Якщо є невпорядковані черги, про них буде повідомлено.

Чи можна відсортувати файл із числовими даними у зворотному порядку за допомогою команди сортування?

Так, параметр «-n» сортує файли з числовими даними, а параметр «-r» можна поєднувати з ним (наприклад, sort -nr numbers.txt> ), щоб досягти зворотного числового сортування.

Висновок

У цій статті ми обговорили команду «sort» у Linux, яка є потужною утилітою для впорядкування текстових файлів у різному порядку. Він підтримує алфавітне, числове та зворотне сортування, а також параметри сортування окремих стовпців і видалення дублікатів. Ця команда є універсальною, обробляє різні типи файлів, включаючи таблиці та числові дані. У статті наведено вичерпний огляд команди sort із синтаксисом, параметрами та практичними прикладами. Часті запитання (FAQ) стосуються поширених запитів, що робить його цінним ресурсом для ефективної організації та аналізу даних у командному рядку Linux.