find difference between two text files with one item per line [duplicate]

grep -Fxvf file1 file2

What the flags mean:

-F, --fixed-strings
              Interpret PATTERN as a list of fixed strings, separated by newlines, any of which is to be matched.    
-x, --line-regexp
              Select only those matches that exactly match the whole line.
-v, --invert-match
              Invert the sense of matching, to select non-matching lines.
-f FILE, --file=FILE
              Obtain patterns from FILE, one per line.  The empty file contains zero patterns, and therefore matches nothing.

You can try

grep -f file1 file2

or

grep -v -F -x -f file1 file2

You can use the comm command to compare two sorted files

comm -13 <(sort file1) <(sort file2)