After asking a question on ubuntuforums.org and not getting a satisfying answer, I've decided to ask the question again here on Ask Ubuntu. I need the answer to be very detailed. Specifically, I need to know which lines get compared every time a line is printed using uniq for the following two examples:
$ cat -A file1.txt aaa^Iupc$ b$ c$ aaa^Iztp$ b$ c$ C$ A$ B$ B$ b$ $ sort file1.txt | uniq -f 1 A aaa upc aaa ztp b
$ cat -A file2.txt aaa^Iupc$ b$ c$ aaa^Iztp$ b$ c$ C$ A$ B$ B$ bbb^Ixpz$ $ sort file2.txt | uniq -f 1 A aaa upc aaa ztp b bbb xpz c
I'm confused about the second example. I don't understand how come uppercase B doesn't end up in the final output. Shouldn't the line with uppercase B be printed given that lines
bbb xpz are both adjacent to each other?
B ---> (empty)
bbb ---> xpz
an empty value and
xpz are both unique so both lines should be printed. Or am I missing something?