Выбор ответа Junior grep, sed, awk, find, xargs спрашивают часто обновлено
Почему uniq -c без sort врёт
Вопрос
Почему в awk '{print $1}' access.log | uniq -c один и тот же IP встречается в результате несколько раз?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: uniq схлопывает только соседние строки, нужен sort. uniq сравнивает строку только с предыдущей.
Варианты ответа
uniqсхлопывает только соседние строки, нуженsortправильный ответuniqучитывает регистр и пробелы в конце строк- awk добавляет к каждой строке её номер, и строки разные
uniq -cсчитает символы в строке, а не повторы
Разбор
uniq сравнивает строку только с предыдущей. Если запросы одного IP перемежаются с другими, получится несколько групп. Правильно: sort | uniq -c. Регистр у IP не играет роли, awk номеров не добавляет, а -c считает именно повторы строк.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.