On Sat, May 07, 2011 at 04:23:40AM +0200, Rolf Nielsen wrote: > 2011-05-07 02:09, Rolf Nielsen skrev: > > Hello all, > > > > I have two text files, quite extensive ones. They have some lines in > > common and some lines are unique to one of the files. The lines that do > > exist in both files are not necessarily in the same location. Now I need > > to compare the files and output a list of lines that exist in both > > files. Is there a simple way to do this? diff? awk? sed? cmp? Or a > > combination of two or more of them? > > > > TIA, > > > > Rolf > > sort file1 file2 | uniq -d
I very seriously doubt that this line does what you want... $ printf "a\na\na\nb\n" > file1; printf "c\nc\nb\n" > file2; sort file1 file2 | uniq -d a b c Try this instead (probably bloated): sort < file1 | uniq | tr -s '\n' '\0' | xargs -0 -I % grep -Fx % file2 | sort | uniq There is comm(1), of course, but it expects files to be already sorted. HTH, Yuri _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[email protected]"
