GREP(1)                                                   GREP(1)

     NAME
          grep - search a file for a pattern

     SYNOPSIS
          grep [ option ... ] pattern [ file ... ]

     DESCRIPTION
          Grep searches the input files (standard input default) for
          lines (with newlines excluded) that match the pattern, a
          regular expression as defined in regexp(6). Normally, each
          line matching the pattern is `selected', and each selected
          line is copied to the standard output.  The options are

          -c   Print only a count of matching lines.
          -h   Do not print file name tags (headers) with output
               lines.
          -i   Ignore alphabetic case distinctions.  The implementa-
               tion folds into lower case all letters in the pattern
               and input before interpretation.  Matched lines are
               printed in their original form.
          -l   (ell) Print the names of files with selected lines;
               don't print the lines.
          -L   Print the names of files with no selected lines; the
               converse of -l.
          -n   Mark each printed line with its line number counted in
               its file.
          -s   Produce no output, but return status.
          -v   Reverse: print lines that do not match the pattern.

          Output lines are tagged by file name when there is more than
          one input file.  (To force this tagging, include /dev/null
          as a file name argument.)

          Care should be taken when using the shell metacharacters
          $*[^|()=\ and newline in pattern; it is safest to enclose
          the entire expression in single quotes '...'.

     SOURCE
          /sys/src/cmd/grep.c

     SEE ALSO
          ed(1), awk(1), sed(1), sam(1), regexp(6)

     DIAGNOSTICS
          Exit status is null if any lines are selected, or non-null
          when no lines are selected or an error occurs.