Diff for /embedaddon/pcre/doc/html/pcregrep.html between versions 1.1 and 1.1.1.3

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 abecause 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 isPatterns can be no longer than 8K or BUFSIZ bytes, whichever is the greater.
defined in <b>&#60;stdio.h&#62;</b>. When there is more than one pattern (specified byBUFSIZ is defined in <b>&#60;stdio.h&#62;</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 areeach 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> isBy default, as soon as one pattern matches a line, no further patterns are
used), no further patterns are considered. However, if <b>--colour</b> (orconsidered. 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 ifmatching 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 furtherfollowing 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 arethere 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 thatbut 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 inThis behaviour means that the order in which multiple patterns are specified
which multiple patterns are specified can affect the output when one of thecan 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 signifyeffect. 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 &#60;name&#62; 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, directoriescompatibility 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 eachnames. 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 toline 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 ofIf <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 twothese 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 ifas 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. Thischaracter 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 lineseparately, 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 ofFiles (but not directories) whose names match the pattern are skipped without
the <b>-r</b> (recursive search) option, any regular files whose names match thebeing processed. This applies to all files, whether listed on the command line,
pattern are excluded. Subdirectories are not excluded by this option; they areobtained from <b>--file-list</b>, or by scanning a directory. The pattern is a
searched recursively, subject to the <b>--exclude-dir</b> andPCRE 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 isname, 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). Ifapply 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 consequenceDirectories whose names match the pattern are skipped without being processed,
of the <b>-r</b> (recursive search) option, any subdirectories whose names matchwhatever 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 affectdirectories, 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 aregular expression, and is matched against the final component of the directory
subdirectory name matches both <b>--include-dir</b> and <b>--exclude-dir</b>, itname, 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 thethis 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 itas 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 againstRead 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. Theeach 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> isoperating 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 beoption. Trailing white space is removed from each line, and blank lines are
present; they are tested before the file's patterns. However, no other patternignored. An empty file contains no patterns and therefore matches nothing. See
is taken from the command line; all arguments are treated as file names. Therealso the comments about multiple patterns versus a single pattern with
is an overall maximum of 100 patterns. Trailing white space is removed fromalternatives 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 ofIf any <b>--include</b> patterns are specified, the only files that are
the <b>-r</b> (recursive search) option, only those regular files whose namesprocessed 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 matchesexpression, 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 shortthe 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 consequenceIf any <b>--include-dir</b> patterns are specified, the only directories that
of the <b>-r</b> (recursive search) option, only those subdirectories whoseare 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, andon 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 adirectory. 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>, itfinal 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 isis 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 othermakes 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 thesegiven number. Up to 32 capturing parentheses are supported, and -o0 is
options can be given without an argument (see above), if an argument isequivalent 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 orwithout 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 alsothe 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 thefor 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 namecapturing 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 ofwith 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 beingWrite 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 isa line) and in addition, require them to match entire lines. This is equivalent
equivalent to having ^ and $ characters at the start and end of eachto 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 thisdifferent newline conventions from the default. Any parts of the input files
option does not affect the way in which <b>pcregrep</b> writes information tothat are written to the standard output are copied identically, with whatever
the standard error and output streams. It uses the string "\n" in Cnewline 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 todoes 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 formas 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 2011Last updated: 13 September 2012
 <br>  <br>
Copyright &copy; 1997-2011 University of Cambridge.Copyright &copy; 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>.

Removed from v.1.1  
changed lines
  Added in v.1.1.1.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>