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)                            CLIX                            egrep(1)



  NAME

    egrep - Searches a file for a pattern using full regular expressions

  SYNOPSIS

    egrep [flag ... ] full_regexp [file ... ]

  FLAGS

    -b     Precedes 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     Displays only a count of the lines that contain the pattern.

    -i     Ignores upper/lowercase distinction during comparisons.

    -l     Displays the names of files with matching lines once, separated by
           newlines.  Does not repeat the names of files when the pattern is
           found more than once.

    -n     Precedes each line by its line number in the file (first line is
           1).

    -v     Displays all lines except those that contain the pattern.

    -e special_expression
           Searches for a special_expression (full_regexp that begins with a
           -).

    -f file
           Takes the list of full_regexps from file.

  DESCRIPTION

    The egrep command (expression grep) searches files for a pattern of
    characters and displays all lines that contain the pattern.  This command
    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, except for \(
    and \), with the addition of:

    ⊕  A full regular expression followed by + that matches one or more
       occurrences of the full regular expression.

    ⊕  A full regular expression followed by ? that matches 0 or 1 occurrences
       of the full regular expression.



  2/94 - Intergraph Corporation                                              1






  egrep(1)                            CLIX                            egrep(1)



    ⊕  Full regular expressions separated by | or by a newline that match
       strings that are matched by any of the expressions.

    ⊕  A full regular expression that can be enclosed in parentheses () for
       grouping.

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

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

    If no files are specified, egrep assumes stdin.  Normally, each line found
    is copied to stdout.  The filename is displayed before each line found if
    there is more than one input file.

  EXAMPLES

    1.  To display all lines matching the regular expression ``hello'' in the
        foo file:

        egrep 'hello' foo


    2.  To display a count of all lines that do not contain the expression
        ``hello'', using a case-insensitive search:

        egrep -civ 'hello' foo


    3.  The following command displays the lines and line numbers, including
        block numbers, that contain the pattern ``-hello'' in the foo file.

        egrep -b -n -e '-hello' foo


    4.  The following command lists the filenames of all the files in the
        current directory that contain the pattern in the file pfile.

        egrep -l -f pfile *


  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.

  DIAGNOSTICS



  2                                              Intergraph Corporation - 2/94






  egrep(1)                            CLIX                            egrep(1)



    egrep: can't open file
           A file given on the command line could not be opened or does not
           exist.

    egrep: syntax error
           The regexp given to egrep did not use correct syntax.

    egrep: regular expression too long
           The regexp exceeded the buffer space.

  EXIT VALUES

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

  RELATED INFORMATION

    Commands: ed(1), fgrep(1), grep(1), sed(1), sh(1)




































  2/94 - Intergraph Corporation                                              3




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