Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ed(1)

fgrep(1)

grep(1)

sed(1)

sh(1)



          EGREP(1)             INTERACTIVE UNIX System             EGREP(1)



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

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

          DESCRIPTION
               The egrep command (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.

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

               1.    A full regular expression followed by + that matches
                     one or more occurrences of the full regular expres-
                     sion.
               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 regu-
               lar 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 (first block is 0).
               -c    Print only a count of the lines that contain the pat-
                     tern.
               -i    Ignore upper/lower case distinction during comparis-
                     ons.
               -l    Print the names of files with matching lines once,


          Rev. Editing Package                                       Page 1





          EGREP(1)             INTERACTIVE UNIX System             EGREP(1)



                     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).
               -v    Print all lines except those that contain the pattern.
               -e special_expression
                     Search for a special expression (full regular expres-
                     sion that begins with a -).
               -f file
                     Take the list of full regular expressions from file.
               -h    Prevents the name of the file containing the matching
                     lines from being appended to that line. Used when
                     searching multiple files.

          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 charac-
               ters; longer lines are truncated.  BUFSIZ is defined in
               /usr/include/stdio.h, which is included as part of the basic
               software development set.


























          Rev. Editing Package                                       Page 2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026