The find command lets you search one file at a time for a string, but the findstr command is more versatile. This command has the following switches:
findstr [/b] [/e] [/l] [/r] [/s] [/i] [/x] [/v] [/n] [/m] [/o] [/f:file]
        [/c:string] [/g:file] [strings] [[drive:][path]filename[ ...]]

The following table explains each parameter.

/b .......... Matches pattern if at the start of a line
/e            Matches pattern if at the end of a line
/l .......... Searches literally
/r            Uses text as a regular expression (default)
/s .......... Searches current directory and all subdirectories
/i            Ignores case
/x .......... Selects lines that are an exact match
/v            Selects lines that don’t match
/n .......... Displays the line number before the matched line
/m            Displays only the matching filenames
/o .......... Displays the offset of the match before the matched line
/g:{file}     Gets the search string from file (/g:argument.txt)
/c:"string"   Uses text as a literal (e.g., /c:"string")
/f:{file}     Gets the file list from file (/f:filelist.txt)
strings       Denotes the search string (in double quotes if multiple words)
files         Shows the files to search

Use spaces to separate multiple search strings unless you use /c.

The command

  findstr "Windows NT FAQ" ntfaq.html

would search for Windows, NT, or FAQ in ntfaq.html.

The command

  findstr /c:"Windows NT FAQ" ntfaq.html 

would search for Windows NT FAQ in ntfaq.htm.