Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


AGREP(1)                    General Commands Manual                   AGREP(1)

NAME
     agrep - print lines approximately matching a pattern

SYNOPSIS
     agrep [options] pattern [files]

DESCRIPTION
     Searches for approximate matches of pattern in each FILE or standard
     input.

OPTIONS
   Regexp selection and interpretation
     -e pattern, --regexp=pattern
                 Use PATTERN as a regular expression; useful to protect
                 patterns beginning with `-'.

     -i, --ignore-case
                 Ignore case distinctions (as defined by the current locale)
                 in pattern and input files.

     -k, --literal
                 Treat pattern as a literal string, that is, a fixed string
                 with no special characters.

     -w, --word-regexp
                 Force pattern to match only whole words.  A "whole word" is a
                 substring which either starts at the beginning or the record
                 or is preceded by a non-word constituent character.
                 Similarly, the substring must either end at the end of the
                 record or be followed by a non-word constituent character.
                 Word-constituent characters are alphanumerics (as defined by
                 the current locale) and the underscore character.  Note that
                 the non-word constituent characters must surround the match;
                 they cannot be counted as errors.

   Approximate matching settings
     -#          Select records that have at most # errors (# is a digit
                 between 0 and 9).

     -D num, --delete-cost=num
                 Set cost of missing characters to num.

     -E -num, --max-errors=num
                 Select records that have at most num errors.

     -I num, --insert-cost=num
                 Set cost of extra characters to num.

     -S num, --substitue-cost=num
                 Set cost of incorrect characters to num.  Note that a
                 deletion (a missing character) and an insertion (an extra
                 character) together constitute a substituted character, but
                 the cost will be the that of a deletion and an insertion
                 added together.  Thus, if the const of a substitution is set
                 to be larger than the sum of the costs of deletion and
                 insertion, direct substitutions will never be done.

   Miscellaneous
     -d -pattern, --delimiter=pattern
                 Set the record delimiter regular expression to pattern.  The
                 text between two delimiters, before the first delimiter, and
                 after the last delimiter is considered to be a record.  The
                 default record delimiter is the regexp "\n", so by default a
                 record is a line.  pattern can be any regular expression that
                 does not match the empty string.  For example, using -d file
                 ... defines mail messages as records in a Mailbox format
                 file.

     --help      Display a brief help message and exit.

     -r, --recursive
                 If a directory is given as one of the command line arguments,
                 look in every directory entry in the subdirectory,
                 recursively.

     -V, --version
                 Print version information and exit.

     -v, --invert-match
                 Select non-matching records instead of matching records.

     -y, --nothing
                 Does nothing.  This options exists only for compatibility
                 with the non-free agrep program.

   Output control
     -B, --best-match
                 Only output the best matching records, that is, the records
                 with the lowest cost.  This is currently implemented by
                 making two passes over the input files and cannot be used
                 when reading from standard input.

     --color, --colour
                 Highlight the matching strings in the output with a color
                 marker.  The color string is taken from the GREP_COLOR
                 environment variable.  The default color is red.

     -c, --count
                 Only print a count of matching records per each input file,
                 suppressing normal output.

     -H, --with-filename
                 Prefix each output record with the name of the input file
                 where the record was read from.

     -h, --no-filename
                 Suppress the prefixing filename on output when multiple files
                 are searched.

     -l, --files-with-matches
                 Only print the name of each input file which contains at
                 least one match, suppressing normal output.  The scanning for
                 each file will stop on the first match.

     -M, --delimiter-after
                 By default, the record delimiter is the newline character and
                 is output after the matching record.  If -d is used, the
                 record delimiter will be output before the matching record.
                 This option causes the delimiter to be output after the
                 matching record.

     -n, --record-number
                 Prefix each output record with its sequence number in the
                 input file.  The number of the first record is 1.

     -q, --quiet, --silent
                 Do not write anything to standard output.  Exit immediately
                 with zero exit status if a match is found.

     -s, --show-cost
                 Print match cost with output.

     --show-position
                 Prefix each output record with the start and end offset of
                 the first match within the record.  The offset of the first
                 character of the record is 0.  The end position is given as
                 the offset of the first character after the match.

     With no file, or when file is "-", agrep reads standard input.  If less
     than two files are given -h is assumed, otherwise -H is the default.

EXAMPLES
           agrep -2 optimize foo.txt
     outputs all lines in file foo.txt that match "optimize" within two
     errors.  E.g. lines which contain "optimise", "optmise", and "opitmize"
     all match.

DIAGNOSTICS
     Exit status is 0 if a match is found, 1 for no match, and 2 if there were
     errors.  If -E or -# is not specified, only exact matches are selected.

     pattern is a POSIX extended regular expression (ERE) with the TRE
     extensions.

REPORTING BUGS
     Report bugs to the TRE mailing list <tre-general@lists.laurikari.net>.

COPYRIGHT
     Copyright (C) 2002-2004 Ville Laurikari.

     This is free software, and comes with ABSOLUTELY NO WARRANTY.  You are
     welcome to redistribute this software under certain conditions; see the
     source for the full license text.

NetBSD 10.99                     June 10, 2016                    NetBSD 10.99