Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ egrep(1) — DG/UX R4.11

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ed(1)

fgrep(1)

grep(1)

sed(1)

sh(1)



egrep(1)                         DG/UX R4.11                        egrep(1)


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

SYNOPSIS
       egrep [options] fullregularexpression [file ...]

DESCRIPTION
       egrep (expression grep) searches files for a pattern of characters
       and prints all lines that contain that pattern.  egrep uses extended
       ("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 " \{ and \} " , and the other exceptions mentioned below
       under International Features, 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
       fullregularexpression, because they are also meaningful to the
       shell.  It is safest to enclose the entire fullregularexpression 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 pattern.
       -i    Ignore upper/lower case distinction during comparisons. This is
             valid for single byte characters only.
       -h    Suppress printing of filenames when searching multiple files.
       -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).
       -v    Print all lines except those that contain the pattern.
       -e specialexpression
             Search for a special expression (fullregularexpression that
             begins with a -).
       -f file
             Take the list of full regular expressions from file.

   International Features
       egrep can process characters from supplementary code sets.  In
       regular expressions, searches are performed on characters, not on
       individual bytes.

       egrep does not support the following international features in
       regular expressions that are described in ed(1):

                   [.ch.]      multi-character collation symbol
                   [=c=]       collation-order equivalence class
                   [:alpha:]   character class

       Moreover, character ranges such as [a-j] are interpreted by simply
       comparing the numeric values of the character bytes, not by using
       collation ordering information.

EXAMPLES
       $ egrep fs2 /etc/passwd
       Searches through the file "/etc/passwd" and prints all lines
       containing the pattern "fs2" on the standard output.

       $ egrep -l -e -ooutfile src/*
       Searches through all the files in the subdirectory "src" for all
       lines containing the regular expression "-ooutfile".  Prints the
       names of the files containing the pattern.

       $ egrep 'int|long' prog.c
       Searches through the file "prog.c" in the current working directory
       for all lines containing the pattern "int" or the pattern "long".
       The "|" character stands for logical "or".  Prints all of the lines
       that contain "int" or "long" on the standard output.

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).

NOTES
       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.


Licensed material--property of copyright holder(s)

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