The -e argument specifies multiple patterns for matching:
$ grep -e "pattern1" -e "pattern2"
This will print the lines that contain either of the patterns and output one line for each match. Consider this example:
$ echo this is a line of text | grep -o -e "this" -e "line"
this
line
Multiple patterns can be defined in a file. The -f option will read the file and use the line-separated patterns:
$ grep -f pattern_filesource_filename
Consider the following example:
$ cat pat_file
hello
cool
$ echo hello this is cool | grep -f pat_file
hello this is cool