uniq - filter out repeated adjacent lines
$ uniq [-c] [-d|-u] [-f skip-fields] [-s skip-chars] [--version] [INPUT] [OUTPUT]
Filter out repeated adjacent lines from INPUT (or standard input) and write to OUTPUT (or standard output). It is recommended to sort out the input using sort(1) beforehand.
-c, --count: Precede each line with its number of occurrences.-d, --repeated: Only print repeated lines.-u, --unique: Only print unique lines (default).-i, --ignore-case: Ignore case when comparing lines.-f N, --skip-fields N: Skip first N fields of each line before comparing.-s N, --skip-chars N: Skip first N chars of each line before comparing.--help: Display help message and exit.--version: Print version.Filter out repeated lines from README.md and write to standard output:
$ uniq README.mdFilter out repeated lines from README.md and write to UNIQUE.md:
$ uniq README.md UNIQUE.mdFilter out repeated lines from standard input with their occurrence count:
$ echo "Well\nWell\nWell\nHello Friends!" | uniq -c
3 Well
1 Hello Friends!Filter out repeated lines, ignoring the first field ("XXXX" and "ZZZZ") and the four chars after it (" ABC" and " BCA", thus comparing only the "D"s — which are equal indeed):
$ echo "XXXX ABCD\nZZZZ BCAD" | uniq -f1 -s4
ZZZZ BCAD