Команда uniq
Часть раздела Основы путешествия по Terminal на Coddy — урок 33 из 82.
Команда uniq отфильтровывает повторяющиеся подряд строки из файла, показывая только уникальные строки.
У нас есть duplicates.txt:
apple
banana
apple
cherry
banana
banana
Важно: uniq удаляет только те дубликаты, которые находятся рядом друг с другом. Поэтому утилиту почти всегда используют сначала в сочетании с sort:
sort duplicates.txt | uniqСимвол | называется пайпом (или конвейером) — он передает вывод одной команды на вход другой. Это мощный паттерн, который вы будете часто использовать в терминале.
Полезные флаги:
-c — добавить перед каждой строкой количество её повторений:
sort duplicates.txt | uniq -c
2 apple
3 banana
1 cherry-d — выводить только строки, которые дублируются:
sort duplicates.txt | uniq -d-u — выводить только строки, которые встречаются ровно один раз:
sort duplicates.txt | uniq -uЗадание
НовичокИспользуйте sort и uniq вместе, чтобы отобразить только уникальные строки из файла duplicates.txt без повторений.
Подсказка: Сначала вам нужно отсортировать файл с помощью
sort, чтобы дубликаты сгруппировались вместе, а затем передать результат через конвейер|в командуuniqдля их удаления.
Попробуйте сами
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Каталоги
Создать каталогСкопировать каталогПереместить и переименовать каталогУдалить каталогИтог - Операции с каталогами7Содержимое файлов
Head и TailПодсчёт словКоманда sortКоманда uniqОсновы grepGrep с флагамиПовторение - Текстовый детектив10Проект анализатора логов
Обзор проектаПросмотр файла лога2Навигация
Вывод текущей рабочей директорииСписок файловСмена директорииАбсолютные и относительные путиДомашняя и корневая директорииИтог - Найди свой путь8Перенаправление
Стандартный выводПерезапись в файлДописывание в файлСтандартный вводСтандартная ошибкаПовторение - Сборщик логов11Права доступа
Понимание прав доступаЧтение прав доступаChmod с числамиChmod с символамиВладение файламиПовторение - Заблокируйте доступ14Проект скрипта резервного копирования
Обзор проектаПолучение пути к источнику3Файлы
Создать файлПрочитать файлСкопировать файлПереместить и переименовать файлУдалить файлПовторение - Операции с файлами6Символы подстановки и шаблоны
Звёздный символ подстановкиВопросительный символ подстановкиСкобочные символы подстановкиКомбинирование символов подстановкиПовторение - выборочные операции9Каналы
Что такое каналЦепочка двух командЦепочка нескольких командКанал с grepИтог - Конвейер данных