/[pcre]/code/trunk/doc/pcregrep.txt
ViewVC logotype

Contents of /code/trunk/doc/pcregrep.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 75 - (hide annotations) (download)
Sat Feb 24 21:40:37 2007 UTC (6 years, 2 months ago) by nigel
File MIME type: text/plain
File size: 4786 byte(s)
Load pcre-5.0 into code/trunk.

1 nigel 73 PCREGREP(1) PCREGREP(1)
2 nigel 49
3    
4 nigel 73
5     NAME
6     pcregrep - a grep with Perl-compatible regular expressions.
7    
8 nigel 49 SYNOPSIS
9 nigel 73 pcregrep [-Vcfhilnrsuvx] [long options] [pattern] [file1 file2 ...]
10 nigel 49
11    
12 nigel 63 DESCRIPTION
13 nigel 49
14 nigel 73 pcregrep searches files for character patterns, in the same way as
15     other grep commands do, but it uses the PCRE regular expression library
16     to support patterns that are compatible with the regular expressions of
17     Perl 5. See pcrepattern for a full description of syntax and semantics
18     of the regular expressions that PCRE supports.
19 nigel 49
20 nigel 73 A pattern must be specified on the command line unless the -f option is
21     used (see below).
22 nigel 63
23 nigel 73 If no files are specified, pcregrep reads the standard input. By
24     default, each line that matches the pattern is copied to the standard
25     output, and if there is more than one file, the file name is printed
26     before each line of output. However, there are options that can change
27     how pcregrep behaves.
28 nigel 49
29 nigel 73 Lines are limited to BUFSIZ characters. BUFSIZ is defined in <stdio.h>.
30     The newline character is removed from the end of each line before it is
31     matched against the pattern.
32 nigel 49
33    
34 nigel 63 OPTIONS
35 nigel 49
36 nigel 63
37 nigel 73 -V Write the version number of the PCRE library being used to
38     the standard error stream.
39 nigel 49
40 nigel 73 -c Do not print individual lines; instead just print a count of
41     the number of lines that would otherwise have been printed.
42     If several files are given, a count is printed for each of
43     them.
44 nigel 49
45 nigel 73 -ffilename
46     Read a number of patterns from the file, one per line, and
47     match all of them against each line of input. A line is out-
48     put if any of the patterns match it. When -f is used, no
49     pattern is taken from the command line; all arguments are
50     treated as file names. There is a maximum of 100 patterns.
51     Trailing white space is removed, and blank lines are ignored.
52     An empty file contains no patterns and therefore matches
53     nothing.
54 nigel 53
55 nigel 73 -h Suppress printing of filenames when searching multiple files.
56 nigel 49
57 nigel 73 -i Ignore upper/lower case distinctions during comparisons.
58 nigel 49
59 nigel 73 -l Instead of printing lines from the files, just print the
60     names of the files containing lines that would have been
61     printed. Each file name is printed once, on a separate line.
62 nigel 49
63 nigel 73 -n Precede each line by its line number in the file.
64 nigel 49
65 nigel 73 -r If any file is a directory, recursively scan the files it
66     contains. Without -r a directory is scanned as a normal file.
67 nigel 53
68 nigel 73 -s Work silently, that is, display nothing except error mes-
69     sages. The exit status indicates whether any matches were
70     found.
71 nigel 49
72 nigel 73 -u Operate in UTF-8 mode. This option is available only if PCRE
73     has been compiled with UTF-8 support. Both the pattern and
74 nigel 75 each subject line must be valid strings of UTF-8 characters.
75 nigel 63
76 nigel 73 -v Invert the sense of the match, so that lines which do not
77     match the pattern are now the ones that are found.
78 nigel 49
79 nigel 73 -x Force the pattern to be anchored (it must start matching at
80     the beginning of the line) and in addition, require it to
81     match the entire line. This is equivalent to having ^ and $
82     characters at the start and end of each alternative branch in
83     the regular expression.
84 nigel 49
85    
86 nigel 63 LONG OPTIONS
87 nigel 49
88 nigel 73 Long forms of all the options are available, as in GNU grep. They are
89     shown in the following table:
90 nigel 49
91 nigel 73 -c --count
92     -h --no-filename
93     -i --ignore-case
94     -l --files-with-matches
95     -n --line-number
96     -r --recursive
97     -s --no-messages
98     -u --utf-8
99     -V --version
100     -v --invert-match
101     -x --line-regex
102     -x --line-regexp
103 nigel 49
104 nigel 73 In addition, --file=filename is equivalent to -ffilename, and --help
105     shows the list of options and then exits.
106 nigel 49
107    
108 nigel 63 DIAGNOSTICS
109 nigel 49
110 nigel 73 Exit status is 0 if any matches were found, 1 if no matches were found,
111     and 2 for syntax errors or inacessible files (even if matches were
112     found).
113 nigel 49
114    
115     AUTHOR
116 nigel 63
117 nigel 73 Philip Hazel <ph10@cam.ac.uk>
118     University Computing Service
119     Cambridge CB2 3QG, England.
120 nigel 49
121 nigel 75 Last updated: 09 September 2004
122     Copyright (c) 1997-2004 University of Cambridge.

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12