EGREP(1)                                                              EGREP(1)


NAME
     egrep - search a file for a pattern using full regular expressions

SYNOPSIS
     egrep [options] full regular expression [file ...]

DESCRIPTION
     egrep (expression grep) searches files for a pattern of characters and
     prints all lines that contain that pattern.  egrep uses full regular
     expressions (expressions that have string values that use the full set of
     alphanumeric and special characters) to match the patterns.  It uses a
     fast deterministic algorithm that sometimes needs exponential space.

     egrep accepts full regular expressions as in ed(1), except for \( and \),
     and except for \< and \>, with the addition of:

     1.    A full regular expression followed by + that matches one or more
           occurrences of the full regular expression.
     2.    A full regular expression followed by ? that matches 0 or 1
           occurrences of the full regular expression.
     3.    Full regular expressions separated by | or by a new-line that match
           strings that are matched by any of the expressions.
     4.    A full regular expression that may be enclosed in parentheses ()
           for grouping.

     Be careful using the characters $, *, [, ^, |, (, ), and \ in full
     regular expression, because they are also meaningful to the shell.  It is
     safest to enclose the entire full regular expression in single quotes
     '...'.

     The order of precedence of operators is [], then *?+, then concatenation,
     then | and new-line.

     If no files are specified, egrep assumes standard input.  Normally, each
     line found is copied to the standard output.  The file name is printed
     before each line found if there is more than one input file.

     Command line options are:

     -b    Precede each line by the block number on which it was found.  This
           can be useful in locating block numbers by context (blocks are 512
           bytes long and number from 0).
     -c    Print only a count of the lines that contain the pattern.
     -h    Suppresses printing of filenames when searching multiple files.
     -i    Ignore upper/lower case distinction during comparisons.
     -l    Print the names of files with matching lines once, separated by
           new-lines.  Does not repeat the names of files when the pattern is
           found more than once.
     -n    Precede each line by its line number in the file (first line is 1).
     -s    Silent mode.  No pattern matches or error messages are printed.
           This option allows command expressions to check egrep's exit status
           without having to deal with output.


     -v    Print all lines except those that contain the pattern.
     -e special_expression
           Search for a special expression (full regular expression that
           begins with a -).
     -f file
           Take the list of full regular expressions from file.

SEE ALSO
     ed(1), fgrep(1), grep(1), sed(1), sh(1).

DIAGNOSTICS
     Exit status is 0 if any matches are found, 1 if none, 2 for syntax errors
     or inaccessible files (even if matches were found).

BUGS
     Ideally there should be only one grep command, but there is not a single
     algorithm that spans a wide enough range of space-time tradeoffs.  Lines
     are limited to BUFSIZ characters; longer lines are truncated.  BUFSIZ is
     defined in /usr/include/stdio.h.


                                                                        Page 2