По умолчанию sort сортирует как текст — 10 окажется перед 2. Числовая сортировка по конкретному полю:
sort -t: -k3,3n /etc/passwd # сортировка по UID (3-е поле, разделитель :)
uniq -c считает повторы соседних строк — но только соседних, поэтому сначала sort:
sort access.log | uniq -c | sort -rn | head -10
Топ-10 IP из access.log без единого awk:
awk '{print $1}' access.log | sort | uniq -c | sort -rn | head -10
uniq -u — наоборот, только строки без дублей (дедупликация в обратную сторону):
sort file.txt | uniq -u # что встретилось ровно один раз
#linux #bash #sysadmin
