Linux Command Line Mastery · Урок

Объединение и сортировка вывода с помощью sort, uniq и cut

Научитесь преобразовывать и обобщать потоковый текст: сортировать строки, удалять дубликаты и извлекать поля с помощью sort, uniq и cut.

Урок 4 из 413 шагов

«Объединение и сортировка вывода с помощью sort, uniq и cut» — бесплатный урок Linux Command Line Mastery на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Linux Command Line Mastery, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Linux Command Line Mastery содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Why sort, uniq, and cut Matter

Filtering with grep and editing with sed/awk gets you far, but real pipelines often need to reorder, deduplicate, and slice columns of text.

  • sort orders lines
  • uniq collapses duplicates
  • cut extracts fields

Together they turn raw streams into clean summaries.

Basic Sorting

sort reads lines and prints them in lexical order by default. It works great inside a pipe.

printf 'banana\napple\ncherry\n' | sort

Numeric and Reverse Sort

Use -n for numeric order and -r to reverse. Without -n, 10 sorts before 2.

printf '10\n2\n33\n4\n' | sort -n -r

Sorting by a Specific Field

-k picks the column to sort on and -t sets the delimiter. Here we sort a CSV by the second field numerically.

printf 'alice,30\nbob,25\ncarol,40\n' | sort -t, -k2 -n

Removing Duplicates with uniq

uniq only collapses adjacent duplicate lines, so you almost always sort first.

printf 'a\na\nb\na\n' | sort | uniq

Counting Occurrences

uniq -c prefixes each line with how many times it appeared. This is the classic frequency-count idiom.

printf 'err\nok\nerr\nerr\nok\n' | sort | uniq -c

Top-N Frequency Report

Combine the tools to build a leaderboard: count, then sort the counts descending.

printf 'GET\nPOST\nGET\nGET\nPOST\n' | sort | uniq -c | sort -nr

Extracting Columns with cut

cut -d sets the delimiter and -f selects fields. Here we grab the username column from a colon-separated record.

printf 'root:x:0\nalice:x:1000\n' | cut -d: -f1

Cutting by Character Position

cut -c selects character ranges instead of fields, useful for fixed-width data.

printf 'ABCDEF\nGHIJKL\n' | cut -c2-4

Finding Only Unique or Only Duplicated Lines

uniq -u prints lines that appear exactly once; uniq -d prints only those that repeat.

printf 'x\ny\nx\nz\n' | sort | uniq -d

A Full Pipeline

Put it all together: extract a field, sort it, count duplicates, and rank. This pattern answers questions like which IP hit us most?

printf '1.1.1.1 GET\n2.2.2.2 GET\n1.1.1.1 POST\n' | cut -d' ' -f1 | sort | uniq -c | sort -nr

Quick Check

Why must you usually run sort before uniq?

Recap

You can now reshape text streams end to end:

  • sort (with -n, -r, -k, -t) orders lines
  • uniq (with -c, -d, -u) deduplicates and counts
  • cut (with -d/-f or -c) extracts fields

The cut | sort | uniq -c | sort -nr chain is one of the most useful one-liners in Linux.

Можно начать бесплатно

Изучай Linux Command Line Mastery с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
12
Уроки
48

Часто задаваемые вопросы

Урок «Объединение и сортировка вывода с помощью sort, uniq и cut» бесплатный?

Да — полный текст урока «Объединение и сортировка вывода с помощью sort, uniq и cut» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Linux Command Line Mastery, подпишись на CoddyKit PRO. Курс Linux Command Line Mastery содержит 4 уроков всего.

Чему я научусь в уроке «Объединение и сортировка вывода с помощью sort, uniq и cut»?

Научитесь преобразовывать и обобщать потоковый текст: сортировать строки, удалять дубликаты и извлекать поля с помощью sort, uniq и cut. Ты практикуешь Linux Command Line Mastery с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Linux Command Line Mastery?

Предыдущий опыт не требуется. Linux Command Line Mastery на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Объединение и сортировка вывода с помощью sort, uniq и cut»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Linux Command Line Mastery?

Да. Каждый урок Linux Command Line Mastery включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Стандартные потоки и перенаправление
  2. Фильтрация текста с помощью `grep`
  3. Обработка текста с помощью `sed` и `awk`
  4. Объединение и сортировка вывода с помощью sort, uniq и cut
← Назад к Linux Command Line Mastery