Blame


1 cfa37a7b 2004-04-10 devnull .TH GREP 1
2 cfa37a7b 2004-04-10 devnull .SH NAME
3 058b0118 2005-01-03 devnull grep, g \- search a file for a pattern
4 cfa37a7b 2004-04-10 devnull .SH SYNOPSIS
5 cfa37a7b 2004-04-10 devnull .B grep
6 cfa37a7b 2004-04-10 devnull [
7 cfa37a7b 2004-04-10 devnull .I option ...
8 cfa37a7b 2004-04-10 devnull ]
9 cfa37a7b 2004-04-10 devnull .I pattern
10 cfa37a7b 2004-04-10 devnull [
11 cfa37a7b 2004-04-10 devnull .I file ...
12 cfa37a7b 2004-04-10 devnull ]
13 058b0118 2005-01-03 devnull .B g
14 058b0118 2005-01-03 devnull [
15 058b0118 2005-01-03 devnull .I option ...
16 058b0118 2005-01-03 devnull ]
17 058b0118 2005-01-03 devnull .I pattern
18 058b0118 2005-01-03 devnull [
19 058b0118 2005-01-03 devnull .I file ...
20 058b0118 2005-01-03 devnull ]
21 cfa37a7b 2004-04-10 devnull .SH DESCRIPTION
22 cfa37a7b 2004-04-10 devnull .I Grep\^
23 cfa37a7b 2004-04-10 devnull searches the input
24 cfa37a7b 2004-04-10 devnull .I files\^
25 cfa37a7b 2004-04-10 devnull (standard input default)
26 cfa37a7b 2004-04-10 devnull for lines that match the
27 cfa37a7b 2004-04-10 devnull .IR pattern ,
28 cfa37a7b 2004-04-10 devnull a regular expression as defined in
29 058b0118 2005-01-03 devnull .IR regexp (7)
30 cfa37a7b 2004-04-10 devnull with the addition of a newline character as an alternative
31 cfa37a7b 2004-04-10 devnull (substitute for
32 cfa37a7b 2004-04-10 devnull .BR | )
33 cfa37a7b 2004-04-10 devnull with lowest precedence.
34 cfa37a7b 2004-04-10 devnull Normally, each line matching the pattern is `selected',
35 cfa37a7b 2004-04-10 devnull and each selected line is copied to the standard output.
36 cfa37a7b 2004-04-10 devnull The options are
37 cfa37a7b 2004-04-10 devnull .TP
38 cfa37a7b 2004-04-10 devnull .B -c
39 cfa37a7b 2004-04-10 devnull Print only a count of matching lines.
40 cfa37a7b 2004-04-10 devnull .PD 0
41 cfa37a7b 2004-04-10 devnull .TP
42 cfa37a7b 2004-04-10 devnull .B -h
43 cfa37a7b 2004-04-10 devnull Do not print file name tags (headers) with output lines.
44 cfa37a7b 2004-04-10 devnull .TP
45 cfa37a7b 2004-04-10 devnull .B -e
46 cfa37a7b 2004-04-10 devnull The following argument is taken as a
47 cfa37a7b 2004-04-10 devnull .IR pattern .
48 cfa37a7b 2004-04-10 devnull This option makes it easy to specify patterns that
49 cfa37a7b 2004-04-10 devnull might confuse argument parsing, such as
50 cfa37a7b 2004-04-10 devnull .BR -n .
51 cfa37a7b 2004-04-10 devnull .TP
52 cfa37a7b 2004-04-10 devnull .B -i
53 cfa37a7b 2004-04-10 devnull Ignore alphabetic case distinctions. The implementation
54 cfa37a7b 2004-04-10 devnull folds into lower case all letters in the pattern and input before
55 cfa37a7b 2004-04-10 devnull interpretation. Matched lines are printed in their original form.
56 cfa37a7b 2004-04-10 devnull .TP
57 cfa37a7b 2004-04-10 devnull .B -l
58 cfa37a7b 2004-04-10 devnull (ell) Print the names of files with selected lines; don't print the lines.
59 cfa37a7b 2004-04-10 devnull .TP
60 cfa37a7b 2004-04-10 devnull .B -L
61 cfa37a7b 2004-04-10 devnull Print the names of files with no selected lines;
62 cfa37a7b 2004-04-10 devnull the converse of
63 cfa37a7b 2004-04-10 devnull .BR -l .
64 cfa37a7b 2004-04-10 devnull .TP
65 cfa37a7b 2004-04-10 devnull .B -n
66 cfa37a7b 2004-04-10 devnull Mark each printed line with its line number counted in its file.
67 cfa37a7b 2004-04-10 devnull .TP
68 cfa37a7b 2004-04-10 devnull .B -s
69 cfa37a7b 2004-04-10 devnull Produce no output, but return status.
70 cfa37a7b 2004-04-10 devnull .TP
71 cfa37a7b 2004-04-10 devnull .B -v
72 cfa37a7b 2004-04-10 devnull Reverse: print lines that do not match the pattern.
73 cfa37a7b 2004-04-10 devnull .TP
74 cfa37a7b 2004-04-10 devnull .B -f
75 cfa37a7b 2004-04-10 devnull The pattern argument is the name of a file containing regular
76 cfa37a7b 2004-04-10 devnull expressions one per line.
77 cfa37a7b 2004-04-10 devnull .TP
78 cfa37a7b 2004-04-10 devnull .B -b
79 cfa37a7b 2004-04-10 devnull Don't buffer the output: write each output line as soon as it is discovered.
80 cfa37a7b 2004-04-10 devnull .PD
81 cfa37a7b 2004-04-10 devnull .PP
82 cfa37a7b 2004-04-10 devnull Output lines are tagged by file name when there is more than one
83 cfa37a7b 2004-04-10 devnull input file.
84 cfa37a7b 2004-04-10 devnull (To force this tagging, include
85 cfa37a7b 2004-04-10 devnull .B /dev/null
86 cfa37a7b 2004-04-10 devnull as a file name argument.)
87 cfa37a7b 2004-04-10 devnull .PP
88 cfa37a7b 2004-04-10 devnull Care should be taken when
89 cfa37a7b 2004-04-10 devnull using the shell metacharacters
90 cfa37a7b 2004-04-10 devnull .B $*[^|()=\e
91 cfa37a7b 2004-04-10 devnull and newline
92 cfa37a7b 2004-04-10 devnull in
93 cfa37a7b 2004-04-10 devnull .IR pattern ;
94 cfa37a7b 2004-04-10 devnull it is safest to enclose the
95 cfa37a7b 2004-04-10 devnull entire expression
96 cfa37a7b 2004-04-10 devnull in single quotes
97 cfa37a7b 2004-04-10 devnull .BR \&\|' \|.\|.\|.\| ' .
98 cfa37a7b 2004-04-10 devnull An expression starting with '*'
99 cfa37a7b 2004-04-10 devnull will treat the rest of the expression
100 cfa37a7b 2004-04-10 devnull as literal characters.
101 058b0118 2005-01-03 devnull .PP
102 058b0118 2005-01-03 devnull .I G
103 058b0118 2005-01-03 devnull invokes grep with
104 058b0118 2005-01-03 devnull .B -n
105 058b0118 2005-01-03 devnull and forces tagging of output lines by file name.
106 058b0118 2005-01-03 devnull If no files are listed, it searches all files matching
107 058b0118 2005-01-03 devnull .IP
108 058b0118 2005-01-03 devnull .EX
109 058b0118 2005-01-03 devnull *.C *.b *.c *.h *.m *.cc *.java *.py *.tex *.ms
110 058b0118 2005-01-03 devnull .EE
111 cfa37a7b 2004-04-10 devnull .SH SOURCE
112 b5fdffee 2004-04-19 devnull .B /usr/local/plan9/src/cmd/grep
113 058b0118 2005-01-03 devnull .br
114 058b0118 2005-01-03 devnull .B /usr/local/plan9/bin/g
115 cfa37a7b 2004-04-10 devnull .SH SEE ALSO
116 cfa37a7b 2004-04-10 devnull .IR ed (1),
117 cfa37a7b 2004-04-10 devnull .IR awk (1),
118 cfa37a7b 2004-04-10 devnull .IR sed (1),
119 cfa37a7b 2004-04-10 devnull .IR sam (1),
120 058b0118 2005-01-03 devnull .IR regexp (7)
121 cfa37a7b 2004-04-10 devnull .SH DIAGNOSTICS
122 cfa37a7b 2004-04-10 devnull Exit status is null if any lines are selected,
123 cfa37a7b 2004-04-10 devnull or non-null when no lines are selected or an error occurs.