Сортировка и удаление дубликатов в данных (sort, uniq, cut)
Превратите необработанный текст в чистые, упорядоченные данные. Научитесь сортировать строки, удалять дубликаты с помощью uniq и извлекать столбцы с помощью cut, а затем объединять эти команды в конвейеры.
«Сортировка и удаление дубликатов в данных (sort, uniq, cut)» — бесплатный урок Linux Command Line & Bash Scripting Mastery на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Linux Command Line & Bash Scripting Mastery, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Linux Command Line & Bash Scripting Mastery содержит 4 уроков всего.
Формирование текстовых данных
Файлы журналов и CSV — это просто строки текста. Три классических инструмента работают с ними так: sort упорядочивает строки, uniq удаляет дубликаты, а cut извлекает столбцы.
Базовая сортировка
sort по умолчанию упорядочивает строки по алфавиту и выводит результат.
sort names.txtЧисловая сортировка
Обычная сортировка воспринимает числа как текст (10 идёт перед 2). Используйте -n для настоящего числового порядка, а -r — для обратного порядка.
sort -n sizes.txt
sort -nr sizes.txt # largest firstСортировка по полю
Используйте -k, чтобы сортировать по определённому столбцу, и -t, чтобы задать разделитель.
sort -t: -k3 -n /etc/passwd # by UIDУдаление дубликатов с помощью uniq
uniq объединяет соседние одинаковые строки. Он работает только с отсортированными входными данными, поэтому почти всегда используется вместе с sort.
sort access.log | uniqПодсчёт вхождений
uniq -c добавляет к началу каждой строки количество её появлений — это идеально подходит для анализа частот.
sort ips.txt | uniq -cПоиск наиболее частых элементов
Объедините sort, uniq -c и ещё один sort, чтобы ранжировать элементы по частоте — получится однострочный отчёт «топ N».
sort ips.txt | uniq -c | sort -nr | head -5Извлечение столбцов с помощью cut
cut извлекает поля из каждой строки. Используйте -d для разделителя и -f для номеров полей.
cut -d, -f1,3 data.csv # 1st and 3rd columnsИзвлечение по символам
cut -c извлекает диапазоны символов по позициям; это удобно для данных фиксированной ширины.
cut -c1-8 dates.txt # first 8 charsУникальные и повторяющиеся строки
uniq -d показывает только повторяющиеся строки, а uniq -u — только строки, встречающиеся ровно один раз.
sort orders.txt | uniq -d # repeated onlyСоздание конвейера
Настоящая сила заключается в объединении команд: извлеките столбец, отсортируйте его, а затем подсчитайте уникальные значения, чтобы одной командой обобщить набор данных.
cut -d, -f2 sales.csv | sort | uniq -c | sort -nrБыстрая проверка
Проверьте своё понимание.
Итоги
Вы научились обрабатывать данные с помощью sort (по алфавиту, числовая сортировка -n, по полю -k), uniq (удаление соседних повторов, подсчёт -c, -d/-u) и cut (поля с -d/-f, символы с -c) — объединяя их в мощные конвейеры.
Часто задаваемые вопросы
Урок «Сортировка и удаление дубликатов в данных (sort, uniq, cut)» бесплатный?
Да — полный текст урока «Сортировка и удаление дубликатов в данных (sort, uniq, cut)» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Linux Command Line & Bash Scripting Mastery, подпишись на CoddyKit PRO. Курс Linux Command Line & Bash Scripting Mastery содержит 4 уроков всего.
Чему я научусь в уроке «Сортировка и удаление дубликатов в данных (sort, uniq, cut)»?
Превратите необработанный текст в чистые, упорядоченные данные. Научитесь сортировать строки, удалять дубликаты с помощью uniq и извлекать столбцы с помощью cut, а затем объединять эти команды в конв… Ты практикуешь Linux Command Line & Bash Scripting Mastery с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Linux Command Line & Bash Scripting Mastery?
Предыдущий опыт не требуется. Linux Command Line & Bash Scripting Mastery на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Сортировка и удаление дубликатов в данных (sort, uniq, cut)»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Linux Command Line & Bash Scripting Mastery?
Да. Каждый урок Linux Command Line & Bash Scripting Mastery включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Расширенная обработка текста (sed, awk)
- Архивирование и сжатие (tar, gzip, unzip)
- Использование диска и сведения о системе (df, du, uname)
- Сортировка и удаление дубликатов в данных (sort, uniq, cut)