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