version 1.1, 2012/02/21 23:05:52
|
version 1.1.1.3, 2013/07/22 08:25:57
|
Line 16 man page, in case the conversion went wrong.
|
Line 16 man page, in case the conversion went wrong.
|
<li><a name="TOC1" href="#SEC1">SYNOPSIS</a> |
<li><a name="TOC1" href="#SEC1">SYNOPSIS</a> |
<li><a name="TOC2" href="#SEC2">DESCRIPTION</a> |
<li><a name="TOC2" href="#SEC2">DESCRIPTION</a> |
<li><a name="TOC3" href="#SEC3">SUPPORT FOR COMPRESSED FILES</a> |
<li><a name="TOC3" href="#SEC3">SUPPORT FOR COMPRESSED FILES</a> |
<li><a name="TOC4" href="#SEC4">OPTIONS</a> | <li><a name="TOC4" href="#SEC4">BINARY FILES</a> |
<li><a name="TOC5" href="#SEC5">ENVIRONMENT VARIABLES</a> | <li><a name="TOC5" href="#SEC5">OPTIONS</a> |
<li><a name="TOC6" href="#SEC6">NEWLINES</a> | <li><a name="TOC6" href="#SEC6">ENVIRONMENT VARIABLES</a> |
<li><a name="TOC7" href="#SEC7">OPTIONS COMPATIBILITY</a> | <li><a name="TOC7" href="#SEC7">NEWLINES</a> |
<li><a name="TOC8" href="#SEC8">OPTIONS WITH DATA</a> | <li><a name="TOC8" href="#SEC8">OPTIONS COMPATIBILITY</a> |
<li><a name="TOC9" href="#SEC9">MATCHING ERRORS</a> | <li><a name="TOC9" href="#SEC9">OPTIONS WITH DATA</a> |
<li><a name="TOC10" href="#SEC10">DIAGNOSTICS</a> | <li><a name="TOC10" href="#SEC10">MATCHING ERRORS</a> |
<li><a name="TOC11" href="#SEC11">SEE ALSO</a> | <li><a name="TOC11" href="#SEC11">DIAGNOSTICS</a> |
<li><a name="TOC12" href="#SEC12">AUTHOR</a> | <li><a name="TOC12" href="#SEC12">SEE ALSO</a> |
<li><a name="TOC13" href="#SEC13">REVISION</a> | <li><a name="TOC13" href="#SEC13">AUTHOR</a> |
| <li><a name="TOC14" href="#SEC14">REVISION</a> |
</ul> |
</ul> |
<br><a name="SEC1" href="#TOC1">SYNOPSIS</a><br> |
<br><a name="SEC1" href="#TOC1">SYNOPSIS</a><br> |
<P> |
<P> |
Line 49 without delimiters. For example:
|
Line 50 without delimiters. For example:
|
If you attempt to use delimiters (for example, by surrounding a pattern with |
If you attempt to use delimiters (for example, by surrounding a pattern with |
slashes, as is common in Perl scripts), they are interpreted as part of the |
slashes, as is common in Perl scripts), they are interpreted as part of the |
pattern. Quotes can of course be used to delimit patterns on the command line |
pattern. Quotes can of course be used to delimit patterns on the command line |
because they are interpreted by the shell, and indeed they are required if a | because they are interpreted by the shell, and indeed quotes are required if a |
pattern contains white space or shell metacharacters. |
pattern contains white space or shell metacharacters. |
</P> |
</P> |
<P> |
<P> |
Line 82 used (to allow for buffering "before" and "after" line
|
Line 83 used (to allow for buffering "before" and "after" line
|
line overflows the buffer. |
line overflows the buffer. |
</P> |
</P> |
<P> |
<P> |
Patterns are limited to 8K or BUFSIZ bytes, whichever is the greater. BUFSIZ is | Patterns can be no longer than 8K or BUFSIZ bytes, whichever is the greater. |
defined in <b><stdio.h></b>. When there is more than one pattern (specified by | BUFSIZ is defined in <b><stdio.h></b>. When there is more than one pattern |
the use of <b>-e</b> and/or <b>-f</b>), each pattern is applied to each line in | (specified by the use of <b>-e</b> and/or <b>-f</b>), each pattern is applied to |
the order in which they are defined, except that all the <b>-e</b> patterns are | each line in the order in which they are defined, except that all the <b>-e</b> |
tried before the <b>-f</b> patterns. | patterns are tried before the <b>-f</b> patterns. |
</P> |
</P> |
<P> |
<P> |
By default, as soon as one pattern matches (or fails to match when <b>-v</b> is | By default, as soon as one pattern matches a line, no further patterns are |
used), no further patterns are considered. However, if <b>--colour</b> (or | considered. However, if <b>--colour</b> (or <b>--color</b>) is used to colour the |
<b>--color</b>) is used to colour the matching substrings, or if | matching substrings, or if <b>--only-matching</b>, <b>--file-offsets</b>, or |
<b>--only-matching</b>, <b>--file-offsets</b>, or <b>--line-offsets</b> is used to | <b>--line-offsets</b> is used to output only the part of the line that matched |
output only the part of the line that matched (either shown literally, or as an | (either shown literally, or as an offset), scanning resumes immediately |
offset), scanning resumes immediately following the match, so that further | following the match, so that further matches on the same line can be found. If |
matches on the same line can be found. If there are multiple patterns, they are | there are multiple patterns, they are all tried on the remainder of the line, |
all tried on the remainder of the line, but patterns that follow the one that | but patterns that follow the one that matched are not tried on the earlier part |
matched are not tried on the earlier part of the line. | of the line. |
</P> |
</P> |
<P> |
<P> |
This is the same behaviour as GNU grep, but it does mean that the order in | This behaviour means that the order in which multiple patterns are specified |
which multiple patterns are specified can affect the output when one of the | can affect the output when one of the above options is used. This is no longer |
above options is used. | the same behaviour as GNU grep, which now manages to display earlier matches |
| for later patterns (as long as there is no overlap). |
</P> |
</P> |
<P> |
<P> |
Patterns that can match an empty string are accepted, but empty string |
Patterns that can match an empty string are accepted, but empty string |
Line 125 of these file types by running it with the <b>--help</
|
Line 127 of these file types by running it with the <b>--help</
|
appropriate support is not present, files are treated as plain text. The |
appropriate support is not present, files are treated as plain text. The |
standard input is always so treated. |
standard input is always so treated. |
</P> |
</P> |
<br><a name="SEC4" href="#TOC1">OPTIONS</a><br> | <br><a name="SEC4" href="#TOC1">BINARY FILES</a><br> |
<P> |
<P> |
|
By default, a file that contains a binary zero byte within the first 1024 bytes |
|
is identified as a binary file, and is processed specially. (GNU grep also |
|
identifies binary files in this manner.) See the <b>--binary-files</b> option |
|
for a means of changing the way binary files are handled. |
|
</P> |
|
<br><a name="SEC5" href="#TOC1">OPTIONS</a><br> |
|
<P> |
The order in which some of the options appear can affect the output. For |
The order in which some of the options appear can affect the output. For |
example, both the <b>-h</b> and <b>-l</b> options affect the printing of file |
example, both the <b>-h</b> and <b>-l</b> options affect the printing of file |
names. Whichever comes later in the command line will be the one that takes |
names. Whichever comes later in the command line will be the one that takes |
effect. Numerical values for options may be followed by K or M, to signify | effect. Similarly, except where noted below, if an option is given twice, the |
multiplication by 1024 or 1024*1024 respectively. | later setting is used. Numerical values for options may be followed by K or M, |
| to signify multiplication by 1024 or 1024*1024 respectively. |
</P> |
</P> |
<P> |
<P> |
<b>--</b> |
<b>--</b> |
Line 149 of <i>number</i> is expected to be relatively small. H
|
Line 159 of <i>number</i> is expected to be relatively small. H
|
guarantees to have up to 8K of following text available for context output. |
guarantees to have up to 8K of following text available for context output. |
</P> |
</P> |
<P> |
<P> |
|
<b>-a</b>, <b>--text</b> |
|
Treat binary files as text. This is equivalent to |
|
<b>--binary-files</b>=<i>text</i>. |
|
</P> |
|
<P> |
<b>-B</b> <i>number</i>, <b>--before-context=</b><i>number</i> |
<b>-B</b> <i>number</i>, <b>--before-context=</b><i>number</i> |
Output <i>number</i> lines of context before each matching line. If filenames |
Output <i>number</i> lines of context before each matching line. If filenames |
and/or line numbers are being output, a hyphen separator is used instead of a |
and/or line numbers are being output, a hyphen separator is used instead of a |
Line 158 of <i>number</i> is expected to be relatively small. H
|
Line 173 of <i>number</i> is expected to be relatively small. H
|
guarantees to have up to 8K of preceding text available for context output. |
guarantees to have up to 8K of preceding text available for context output. |
</P> |
</P> |
<P> |
<P> |
|
<b>--binary-files=</b><i>word</i> |
|
Specify how binary files are to be processed. If the word is "binary" (the |
|
default), pattern matching is performed on binary files, but the only output is |
|
"Binary file <name> matches" when a match succeeds. If the word is "text", |
|
which is equivalent to the <b>-a</b> or <b>--text</b> option, binary files are |
|
processed in the same way as any other file. In this case, when a match |
|
succeeds, the output may be binary garbage, which can have nasty effects if |
|
sent to a terminal. If the word is "without-match", which is equivalent to the |
|
<b>-I</b> option, binary files are not processed at all; they are assumed not to |
|
be of interest. |
|
</P> |
|
<P> |
<b>--buffer-size=</b><i>number</i> |
<b>--buffer-size=</b><i>number</i> |
Set the parameter that controls how much memory is used for buffering files |
Set the parameter that controls how much memory is used for buffering files |
that are being scanned. |
that are being scanned. |
Line 210 it is to be processed. Valid values are "read" (the de
|
Line 237 it is to be processed. Valid values are "read" (the de
|
<P> |
<P> |
<b>-d</b> <i>action</i>, <b>--directories=</b><i>action</i> |
<b>-d</b> <i>action</i>, <b>--directories=</b><i>action</i> |
If an input path is a directory, "action" specifies how it is to be processed. |
If an input path is a directory, "action" specifies how it is to be processed. |
Valid values are "read" (the default), "recurse" (equivalent to the <b>-r</b> | Valid values are "read" (the default in non-Windows environments, for |
option), or "skip" (silently skip the path). In the default case, directories | compatibility with GNU grep), "recurse" (equivalent to the <b>-r</b> option), or |
are read as if they were ordinary files. In some operating systems the effect | "skip" (silently skip the path, the default in Windows environments). In the |
of reading a directory like this is an immediate end-of-file. | "read" case, directories are read as if they were ordinary files. In some |
| operating systems the effect of reading a directory like this is an immediate |
| end-of-file; in others it may provoke an error. |
</P> |
</P> |
<P> |
<P> |
<b>-e</b> <i>pattern</i>, <b>--regex=</b><i>pattern</i>, <b>--regexp=</b><i>pattern</i> |
<b>-e</b> <i>pattern</i>, <b>--regex=</b><i>pattern</i>, <b>--regexp=</b><i>pattern</i> |
Line 221 Specify a pattern to be matched. This option can be us
|
Line 250 Specify a pattern to be matched. This option can be us
|
order to specify several patterns. It can also be used as a way of specifying a |
order to specify several patterns. It can also be used as a way of specifying a |
single pattern that starts with a hyphen. When <b>-e</b> is used, no argument |
single pattern that starts with a hyphen. When <b>-e</b> is used, no argument |
pattern is taken from the command line; all arguments are treated as file |
pattern is taken from the command line; all arguments are treated as file |
names. There is an overall maximum of 100 patterns. They are applied to each | names. There is no limit to the number of patterns. They are applied to each |
line in the order in which they are defined until one matches (or fails to | line in the order in which they are defined until one matches. |
match if <b>-v</b> is used). If <b>-f</b> is used with <b>-e</b>, the command line | <br> |
patterns are matched first, followed by the patterns from the file, independent | <br> |
of the order in which these options are specified. Note that multiple use of | If <b>-f</b> is used with <b>-e</b>, the command line patterns are matched first, |
<b>-e</b> is not the same as a single pattern with alternatives. For example, | followed by the patterns from the file(s), independent of the order in which |
X|Y finds the first character in a line that is X or Y, whereas if the two | these options are specified. Note that multiple use of <b>-e</b> is not the same |
patterns are given separately, <b>pcregrep</b> finds X if it is present, even if | as a single pattern with alternatives. For example, X|Y finds the first |
it follows Y in the line. It finds Y only if there is no X in the line. This | character in a line that is X or Y, whereas if the two patterns are given |
really matters only if you are using <b>-o</b> to show the part(s) of the line | separately, with X first, <b>pcregrep</b> finds X if it is present, even if it |
that matched. | follows Y in the line. It finds Y only if there is no X in the line. This |
| matters only if you are using <b>-o</b> or <b>--colo(u)r</b> to show the part(s) |
| of the line that matched. |
</P> |
</P> |
<P> |
<P> |
<b>--exclude</b>=<i>pattern</i> |
<b>--exclude</b>=<i>pattern</i> |
When <b>pcregrep</b> is searching the files in a directory as a consequence of | Files (but not directories) whose names match the pattern are skipped without |
the <b>-r</b> (recursive search) option, any regular files whose names match the | being processed. This applies to all files, whether listed on the command line, |
pattern are excluded. Subdirectories are not excluded by this option; they are | obtained from <b>--file-list</b>, or by scanning a directory. The pattern is a |
searched recursively, subject to the <b>--exclude-dir</b> and | PCRE regular expression, and is matched against the final component of the file |
<b>--include_dir</b> options. The pattern is a PCRE regular expression, and is | name, not the entire path. The <b>-F</b>, <b>-w</b>, and <b>-x</b> options do not |
matched against the final component of the file name (not the entire path). If | apply to this pattern. The option may be given any number of times in order to |
a file name matches both <b>--include</b> and <b>--exclude</b>, it is excluded. | specify multiple patterns. If a file name matches both an <b>--include</b> |
There is no short form for this option. | and an <b>--exclude</b> pattern, it is excluded. There is no short form for this |
| option. |
</P> |
</P> |
<P> |
<P> |
|
<b>--exclude-from=</b><i>filename</i> |
|
Treat each non-empty line of the file as the data for an <b>--exclude</b> |
|
option. What constitutes a newline when reading the file is the operating |
|
system's default. The <b>--newline</b> option has no effect on this option. This |
|
option may be given more than once in order to specify a number of files to |
|
read. |
|
</P> |
|
<P> |
<b>--exclude-dir</b>=<i>pattern</i> |
<b>--exclude-dir</b>=<i>pattern</i> |
When <b>pcregrep</b> is searching the contents of a directory as a consequence | Directories whose names match the pattern are skipped without being processed, |
of the <b>-r</b> (recursive search) option, any subdirectories whose names match | whatever the setting of the <b>--recursive</b> option. This applies to all |
the pattern are excluded. (Note that the \fP--exclude\fP option does not affect | directories, whether listed on the command line, obtained from |
subdirectories.) The pattern is a PCRE regular expression, and is matched | <b>--file-list</b>, or by scanning a parent directory. The pattern is a PCRE |
against the final component of the name (not the entire path). If a | regular expression, and is matched against the final component of the directory |
subdirectory name matches both <b>--include-dir</b> and <b>--exclude-dir</b>, it | name, not the entire path. The <b>-F</b>, <b>-w</b>, and <b>-x</b> options do not |
is excluded. There is no short form for this option. | apply to this pattern. The option may be given any number of times in order to |
| specify more than one pattern. If a directory matches both <b>--include-dir</b> |
| and <b>--exclude-dir</b>, it is excluded. There is no short form for this |
| option. |
</P> |
</P> |
<P> |
<P> |
<b>-F</b>, <b>--fixed-strings</b> |
<b>-F</b>, <b>--fixed-strings</b> |
Interpret each pattern as a list of fixed strings, separated by newlines, | Interpret each data-matching pattern as a list of fixed strings, separated by |
instead of as a regular expression. The <b>-w</b> (match as a word) and <b>-x</b> | newlines, instead of as a regular expression. What constitutes a newline for |
(match whole line) options can be used with <b>-F</b>. They apply to each of the | this purpose is controlled by the <b>--newline</b> option. The <b>-w</b> (match |
fixed strings. A line is selected if any of the fixed strings are found in it | as a word) and <b>-x</b> (match whole line) options can be used with <b>-F</b>. |
(subject to <b>-w</b> or <b>-x</b>, if present). | They apply to each of the fixed strings. A line is selected if any of the fixed |
| strings are found in it (subject to <b>-w</b> or <b>-x</b>, if present). This |
| option applies only to the patterns that are matched against the contents of |
| files; it does not apply to patterns specified by any of the <b>--include</b> or |
| <b>--exclude</b> options. |
</P> |
</P> |
<P> |
<P> |
<b>-f</b> <i>filename</i>, <b>--file=</b><i>filename</i> |
<b>-f</b> <i>filename</i>, <b>--file=</b><i>filename</i> |
Read a number of patterns from the file, one per line, and match them against | Read patterns from the file, one per line, and match them against |
each line of input. A data line is output if any of the patterns match it. The | each line of input. What constitutes a newline when reading the file is the |
filename can be given as "-" to refer to the standard input. When <b>-f</b> is | operating system's default. The <b>--newline</b> option has no effect on this |
used, patterns specified on the command line using <b>-e</b> may also be | option. Trailing white space is removed from each line, and blank lines are |
present; they are tested before the file's patterns. However, no other pattern | ignored. An empty file contains no patterns and therefore matches nothing. See |
is taken from the command line; all arguments are treated as file names. There | also the comments about multiple patterns versus a single pattern with |
is an overall maximum of 100 patterns. Trailing white space is removed from | alternatives in the description of <b>-e</b> above. |
each line, and blank lines are ignored. An empty file contains no patterns and | <br> |
therefore matches nothing. See also the comments about multiple patterns versus | <br> |
a single pattern with alternatives in the description of <b>-e</b> above. | If this option is given more than once, all the specified files are |
| read. A data line is output if any of the patterns match it. A filename can |
| be given as "-" to refer to the standard input. When <b>-f</b> is used, patterns |
| specified on the command line using <b>-e</b> may also be present; they are |
| tested before the file's patterns. However, no other pattern is taken from the |
| command line; all arguments are treated as the names of paths to be searched. |
</P> |
</P> |
<P> |
<P> |
|
<b>--file-list</b>=<i>filename</i> |
|
Read a list of files and/or directories that are to be scanned from the given |
|
file, one per line. Trailing white space is removed from each line, and blank |
|
lines are ignored. These paths are processed before any that are listed on the |
|
command line. The filename can be given as "-" to refer to the standard input. |
|
If <b>--file</b> and <b>--file-list</b> are both specified as "-", patterns are |
|
read first. This is useful only when the standard input is a terminal, from |
|
which further lines (the list of files) can be read after an end-of-file |
|
indication. If this option is given more than once, all the specified files are |
|
read. |
|
</P> |
|
<P> |
<b>--file-offsets</b> |
<b>--file-offsets</b> |
Instead of showing lines or parts of lines that match, show each match as an |
Instead of showing lines or parts of lines that match, show each match as an |
offset from the start of the file and a length, separated by a comma. In this |
offset from the start of the file and a length, separated by a comma. In this |
Line 302 If a line number is also being output, it follows the
|
Line 366 If a line number is also being output, it follows the
|
<P> |
<P> |
<b>--help</b> |
<b>--help</b> |
Output a help message, giving brief details of the command options and file |
Output a help message, giving brief details of the command options and file |
type support, and then exit. | type support, and then exit. Anything else on the command line is |
| ignored. |
</P> |
</P> |
<P> |
<P> |
|
<b>-I</b> |
|
Treat binary files as never matching. This is equivalent to |
|
<b>--binary-files</b>=<i>without-match</i>. |
|
</P> |
|
<P> |
<b>-i</b>, <b>--ignore-case</b> |
<b>-i</b>, <b>--ignore-case</b> |
Ignore upper/lower case distinctions during comparisons. |
Ignore upper/lower case distinctions during comparisons. |
</P> |
</P> |
<P> |
<P> |
<b>--include</b>=<i>pattern</i> |
<b>--include</b>=<i>pattern</i> |
When <b>pcregrep</b> is searching the files in a directory as a consequence of | If any <b>--include</b> patterns are specified, the only files that are |
the <b>-r</b> (recursive search) option, only those regular files whose names | processed are those that match one of the patterns (and do not match an |
match the pattern are included. Subdirectories are always included and searched | <b>--exclude</b> pattern). This option does not affect directories, but it |
recursively, subject to the \fP--include-dir\fP and <b>--exclude-dir</b> | applies to all files, whether listed on the command line, obtained from |
options. The pattern is a PCRE regular expression, and is matched against the | <b>--file-list</b>, or by scanning a directory. The pattern is a PCRE regular |
final component of the file name (not the entire path). If a file name matches | expression, and is matched against the final component of the file name, not |
both <b>--include</b> and <b>--exclude</b>, it is excluded. There is no short | the entire path. The <b>-F</b>, <b>-w</b>, and <b>-x</b> options do not apply to |
form for this option. | this pattern. The option may be given any number of times. If a file name |
| matches both an <b>--include</b> and an <b>--exclude</b> pattern, it is excluded. |
| There is no short form for this option. |
</P> |
</P> |
<P> |
<P> |
|
<b>--include-from=</b><i>filename</i> |
|
Treat each non-empty line of the file as the data for an <b>--include</b> |
|
option. What constitutes a newline for this purpose is the operating system's |
|
default. The <b>--newline</b> option has no effect on this option. This option |
|
may be given any number of times; all the files are read. |
|
</P> |
|
<P> |
<b>--include-dir</b>=<i>pattern</i> |
<b>--include-dir</b>=<i>pattern</i> |
When <b>pcregrep</b> is searching the contents of a directory as a consequence | If any <b>--include-dir</b> patterns are specified, the only directories that |
of the <b>-r</b> (recursive search) option, only those subdirectories whose | are processed are those that match one of the patterns (and do not match an |
names match the pattern are included. (Note that the <b>--include</b> option | <b>--exclude-dir</b> pattern). This applies to all directories, whether listed |
does not affect subdirectories.) The pattern is a PCRE regular expression, and | on the command line, obtained from <b>--file-list</b>, or by scanning a parent |
is matched against the final component of the name (not the entire path). If a | directory. The pattern is a PCRE regular expression, and is matched against the |
subdirectory name matches both <b>--include-dir</b> and <b>--exclude-dir</b>, it | final component of the directory name, not the entire path. The <b>-F</b>, |
is excluded. There is no short form for this option. | <b>-w</b>, and <b>-x</b> options do not apply to this pattern. The option may be |
| given any number of times. If a directory matches both <b>--include-dir</b> and |
| <b>--exclude-dir</b>, it is excluded. There is no short form for this option. |
</P> |
</P> |
<P> |
<P> |
<b>-L</b>, <b>--files-without-match</b> |
<b>-L</b>, <b>--files-without-match</b> |
Line 356 short form for this option.
|
Line 437 short form for this option.
|
When this option is given, input is read and processed line by line, and the |
When this option is given, input is read and processed line by line, and the |
output is flushed after each write. By default, input is read in large chunks, |
output is flushed after each write. By default, input is read in large chunks, |
unless <b>pcregrep</b> can determine that it is reading from a terminal (which |
unless <b>pcregrep</b> can determine that it is reading from a terminal (which |
is currently possible only in Unix environments). Output to terminal is | is currently possible only in Unix-like environments). Output to terminal is |
normally automatically flushed by the operating system. This option can be |
normally automatically flushed by the operating system. This option can be |
useful when the input or output is attached to a pipe and you do not want |
useful when the input or output is attached to a pipe and you do not want |
<b>pcregrep</b> to buffer up large amounts of data. However, its use will affect |
<b>pcregrep</b> to buffer up large amounts of data. However, its use will affect |
Line 443 When the PCRE library is built, a default line-ending
|
Line 524 When the PCRE library is built, a default line-ending
|
This is normally the standard sequence for the operating system. Unless |
This is normally the standard sequence for the operating system. Unless |
otherwise specified by this option, <b>pcregrep</b> uses the library's default. |
otherwise specified by this option, <b>pcregrep</b> uses the library's default. |
The possible values for this option are CR, LF, CRLF, ANYCRLF, or ANY. This |
The possible values for this option are CR, LF, CRLF, ANYCRLF, or ANY. This |
makes it possible to use <b>pcregrep</b> on files that have come from other | makes it possible to use <b>pcregrep</b> to scan files that have come from other |
environments without having to modify their line endings. If the data that is |
environments without having to modify their line endings. If the data that is |
being scanned does not agree with the convention set by this option, |
being scanned does not agree with the convention set by this option, |
<b>pcregrep</b> may behave in strange ways. | <b>pcregrep</b> may behave in strange ways. Note that this option does not |
| apply to files specified by the <b>-f</b>, <b>--exclude-from</b>, or |
| <b>--include-from</b> options, which are expected to use the operating system's |
| standard newline sequence. |
</P> |
</P> |
<P> |
<P> |
<b>-n</b>, <b>--line-number</b> |
<b>-n</b>, <b>--line-number</b> |
Line 478 exclusive with <b>--file-offsets</b> and <b>--line-off
|
Line 562 exclusive with <b>--file-offsets</b> and <b>--line-off
|
<P> |
<P> |
<b>-o</b><i>number</i>, <b>--only-matching</b>=<i>number</i> |
<b>-o</b><i>number</i>, <b>--only-matching</b>=<i>number</i> |
Show only the part of the line that matched the capturing parentheses of the |
Show only the part of the line that matched the capturing parentheses of the |
given number. Up to 32 capturing parentheses are supported. Because these | given number. Up to 32 capturing parentheses are supported, and -o0 is |
options can be given without an argument (see above), if an argument is | equivalent to <b>-o</b> without a number. Because these options can be given |
present, it must be given in the same shell item, for example, -o3 or | without an argument (see above), if an argument is present, it must be given in |
--only-matching=2. The comments given for the non-argument case above also | the same shell item, for example, -o3 or --only-matching=2. The comments given |
apply to this case. If the specified capturing parentheses do not exist in the | for the non-argument case above also apply to this case. If the specified |
pattern, or were not set in the match, nothing is output unless the file name | capturing parentheses do not exist in the pattern, or were not set in the |
or line number are being printed. | match, nothing is output unless the file name or line number are being printed. |
| <br> |
| <br> |
| If this option is given multiple times, multiple substrings are output, in the |
| order the options are given. For example, -o3 -o1 -o3 causes the substrings |
| matched by capturing parentheses 3 and 1 and then 3 again to be output. By |
| default, there is no separator (but see the next option). |
</P> |
</P> |
<P> |
<P> |
|
<b>--om-separator</b>=<i>text</i> |
|
Specify a separating string for multiple occurrences of <b>-o</b>. The default |
|
is an empty string. Separating strings are never coloured. |
|
</P> |
|
<P> |
<b>-q</b>, <b>--quiet</b> |
<b>-q</b>, <b>--quiet</b> |
Work quietly, that is, display nothing except error messages. The exit |
Work quietly, that is, display nothing except error messages. The exit |
status indicates whether or not any matches were found. |
status indicates whether or not any matches were found. |
Line 512 found in other files.
|
Line 607 found in other files.
|
<P> |
<P> |
<b>-u</b>, <b>--utf-8</b> |
<b>-u</b>, <b>--utf-8</b> |
Operate in UTF-8 mode. This option is available only if PCRE has been compiled |
Operate in UTF-8 mode. This option is available only if PCRE has been compiled |
with UTF-8 support. Both patterns and subject lines must be valid strings of | with UTF-8 support. All patterns (including those for any <b>--exclude</b> and |
UTF-8 characters. | <b>--include</b> options) and all subject lines that are scanned must be valid |
| strings of UTF-8 characters. |
</P> |
</P> |
<P> |
<P> |
<b>-V</b>, <b>--version</b> |
<b>-V</b>, <b>--version</b> |
Write the version numbers of <b>pcregrep</b> and the PCRE library that is being | Write the version numbers of <b>pcregrep</b> and the PCRE library to the |
used to the standard error stream. | standard output and then exit. Anything else on the command line is |
| ignored. |
</P> |
</P> |
<P> |
<P> |
<b>-v</b>, <b>--invert-match</b> |
<b>-v</b>, <b>--invert-match</b> |
Line 528 the patterns are the ones that are found.
|
Line 625 the patterns are the ones that are found.
|
<P> |
<P> |
<b>-w</b>, <b>--word-regex</b>, <b>--word-regexp</b> |
<b>-w</b>, <b>--word-regex</b>, <b>--word-regexp</b> |
Force the patterns to match only whole words. This is equivalent to having \b |
Force the patterns to match only whole words. This is equivalent to having \b |
at the start and end of the pattern. | at the start and end of the pattern. This option applies only to the patterns |
| that are matched against the contents of files; it does not apply to patterns |
| specified by any of the <b>--include</b> or <b>--exclude</b> options. |
</P> |
</P> |
<P> |
<P> |
<b>-x</b>, <b>--line-regex</b>, <b>--line-regexp</b> |
<b>-x</b>, <b>--line-regex</b>, <b>--line-regexp</b> |
Force the patterns to be anchored (each must start matching at the beginning of |
Force the patterns to be anchored (each must start matching at the beginning of |
a line) and in addition, require them to match entire lines. This is | a line) and in addition, require them to match entire lines. This is equivalent |
equivalent to having ^ and $ characters at the start and end of each | to having ^ and $ characters at the start and end of each alternative branch in |
alternative branch in every pattern. | every pattern. This option applies only to the patterns that are matched |
| against the contents of files; it does not apply to patterns specified by any |
| of the <b>--include</b> or <b>--exclude</b> options. |
</P> |
</P> |
<br><a name="SEC5" href="#TOC1">ENVIRONMENT VARIABLES</a><br> | <br><a name="SEC6" href="#TOC1">ENVIRONMENT VARIABLES</a><br> |
<P> |
<P> |
The environment variables <b>LC_ALL</b> and <b>LC_CTYPE</b> are examined, in that |
The environment variables <b>LC_ALL</b> and <b>LC_CTYPE</b> are examined, in that |
order, for a locale. The first one that is set is used. This can be overridden |
order, for a locale. The first one that is set is used. This can be overridden |
by the <b>--locale</b> option. If no locale is set, the PCRE library's default |
by the <b>--locale</b> option. If no locale is set, the PCRE library's default |
(usually the "C" locale) is used. |
(usually the "C" locale) is used. |
</P> |
</P> |
<br><a name="SEC6" href="#TOC1">NEWLINES</a><br> | <br><a name="SEC7" href="#TOC1">NEWLINES</a><br> |
<P> |
<P> |
The <b>-N</b> (<b>--newline</b>) option allows <b>pcregrep</b> to scan files with |
The <b>-N</b> (<b>--newline</b>) option allows <b>pcregrep</b> to scan files with |
different newline conventions from the default. However, the setting of this | different newline conventions from the default. Any parts of the input files |
option does not affect the way in which <b>pcregrep</b> writes information to | that are written to the standard output are copied identically, with whatever |
the standard error and output streams. It uses the string "\n" in C | newline sequences they have in the input. However, the setting of this option |
<b>printf()</b> calls to indicate newlines, relying on the C I/O library to | does not affect the interpretation of files specified by the <b>-f</b>, |
convert this to an appropriate sequence if the output is sent to a file. | <b>--exclude-from</b>, or <b>--include-from</b> options, which are assumed to use |
| the operating system's standard newline sequence, nor does it affect the way in |
| which <b>pcregrep</b> writes informational messages to the standard error and |
| output streams. For these it uses the string "\n" to indicate newlines, |
| relying on the C I/O library to convert this to an appropriate sequence. |
</P> |
</P> |
<br><a name="SEC7" href="#TOC1">OPTIONS COMPATIBILITY</a><br> | <br><a name="SEC8" href="#TOC1">OPTIONS COMPATIBILITY</a><br> |
<P> |
<P> |
Many of the short and long forms of <b>pcregrep</b>'s options are the same |
Many of the short and long forms of <b>pcregrep</b>'s options are the same |
as in the GNU <b>grep</b> program (version 2.5.4). Any long option of the form | as in the GNU <b>grep</b> program. Any long option of the form |
<b>--xxx-regexp</b> (GNU terminology) is also available as <b>--xxx-regex</b> |
<b>--xxx-regexp</b> (GNU terminology) is also available as <b>--xxx-regex</b> |
(PCRE terminology). However, the <b>--file-offsets</b>, <b>--include-dir</b>, | (PCRE terminology). However, the <b>--file-list</b>, <b>--file-offsets</b>, |
<b>--line-offsets</b>, <b>--locale</b>, <b>--match-limit</b>, <b>-M</b>, | <b>--include-dir</b>, <b>--line-offsets</b>, <b>--locale</b>, <b>--match-limit</b>, |
<b>--multiline</b>, <b>-N</b>, <b>--newline</b>, <b>--recursion-limit</b>, | <b>-M</b>, <b>--multiline</b>, <b>-N</b>, <b>--newline</b>, <b>--om-separator</b>, |
<b>-u</b>, and <b>--utf-8</b> options are specific to <b>pcregrep</b>, as is the | <b>--recursion-limit</b>, <b>-u</b>, and <b>--utf-8</b> options are specific to |
use of the <b>--only-matching</b> option with a capturing parentheses number. | <b>pcregrep</b>, as is the use of the <b>--only-matching</b> option with a |
| capturing parentheses number. |
</P> |
</P> |
<P> |
<P> |
Although most of the common options work the same way, a few are different in |
Although most of the common options work the same way, a few are different in |
Line 571 for GNU <b>grep</b>, but a regular expression for <b>p
|
Line 677 for GNU <b>grep</b>, but a regular expression for <b>p
|
<b>-c</b> and <b>-l</b> options are given, GNU grep lists only file names, |
<b>-c</b> and <b>-l</b> options are given, GNU grep lists only file names, |
without counts, but <b>pcregrep</b> gives the counts. |
without counts, but <b>pcregrep</b> gives the counts. |
</P> |
</P> |
<br><a name="SEC8" href="#TOC1">OPTIONS WITH DATA</a><br> | <br><a name="SEC9" href="#TOC1">OPTIONS WITH DATA</a><br> |
<P> |
<P> |
There are four different ways in which an option with data can be specified. |
There are four different ways in which an option with data can be specified. |
If a short form option is used, the data may follow immediately, or (with one |
If a short form option is used, the data may follow immediately, or (with one |
Line 603 The exceptions to the above are the <b>--colour</b> (o
|
Line 709 The exceptions to the above are the <b>--colour</b> (o
|
options does have data, it must be given in the first form, using an equals |
options does have data, it must be given in the first form, using an equals |
character. Otherwise <b>pcregrep</b> will assume that it has no data. |
character. Otherwise <b>pcregrep</b> will assume that it has no data. |
</P> |
</P> |
<br><a name="SEC9" href="#TOC1">MATCHING ERRORS</a><br> | <br><a name="SEC10" href="#TOC1">MATCHING ERRORS</a><br> |
<P> |
<P> |
It is possible to supply a regular expression that takes a very long time to |
It is possible to supply a regular expression that takes a very long time to |
fail to match certain lines. Such patterns normally involve nested indefinite |
fail to match certain lines. Such patterns normally involve nested indefinite |
Line 619 resource limit; there is a second option called <b>--r
|
Line 725 resource limit; there is a second option called <b>--r
|
sets a limit on the amount of memory (usually stack) that is used (see the |
sets a limit on the amount of memory (usually stack) that is used (see the |
discussion of these options above). |
discussion of these options above). |
</P> |
</P> |
<br><a name="SEC10" href="#TOC1">DIAGNOSTICS</a><br> | <br><a name="SEC11" href="#TOC1">DIAGNOSTICS</a><br> |
<P> |
<P> |
Exit status is 0 if any matches were found, 1 if no matches were found, and 2 |
Exit status is 0 if any matches were found, 1 if no matches were found, and 2 |
for syntax errors, overlong lines, non-existent or inaccessible files (even if |
for syntax errors, overlong lines, non-existent or inaccessible files (even if |
Line 627 matches were found in other files) or too many matchin
|
Line 733 matches were found in other files) or too many matchin
|
<b>-s</b> option to suppress error messages about inaccessible files does not |
<b>-s</b> option to suppress error messages about inaccessible files does not |
affect the return code. |
affect the return code. |
</P> |
</P> |
<br><a name="SEC11" href="#TOC1">SEE ALSO</a><br> | <br><a name="SEC12" href="#TOC1">SEE ALSO</a><br> |
<P> |
<P> |
<b>pcrepattern</b>(3), <b>pcretest</b>(1). | <b>pcrepattern</b>(3), <b>pcresyntax</b>(3), <b>pcretest</b>(1). |
</P> |
</P> |
<br><a name="SEC12" href="#TOC1">AUTHOR</a><br> | <br><a name="SEC13" href="#TOC1">AUTHOR</a><br> |
<P> |
<P> |
Philip Hazel |
Philip Hazel |
<br> |
<br> |
Line 640 University Computing Service
|
Line 746 University Computing Service
|
Cambridge CB2 3QH, England. |
Cambridge CB2 3QH, England. |
<br> |
<br> |
</P> |
</P> |
<br><a name="SEC13" href="#TOC1">REVISION</a><br> | <br><a name="SEC14" href="#TOC1">REVISION</a><br> |
<P> |
<P> |
Last updated: 06 September 2011 | Last updated: 13 September 2012 |
<br> |
<br> |
Copyright © 1997-2011 University of Cambridge. | Copyright © 1997-2012 University of Cambridge. |
<br> |
<br> |
<p> |
<p> |
Return to the <a href="index.html">PCRE index page</a>. |
Return to the <a href="index.html">PCRE index page</a>. |