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