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