grep -Fxvf file1 file2
Where
-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.
ex. file1:
abc abcd abcde
file2
abcd abcde abcdef
grep -Fxvf file2 file1
returns
abc