Initial import from FreeBSD RELENG_4:
[games.git] / bin / cat / cat.1
1 .\" Copyright (c) 1989, 1990, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" This code is derived from software contributed to Berkeley by
5 .\" the Institute of Electrical and Electronics Engineers, Inc.
6 .\"
7 .\" Redistribution and use in source and binary forms, with or without
8 .\" modification, are permitted provided that the following conditions
9 .\" are met:
10 .\" 1. Redistributions of source code must retain the above copyright
11 .\"    notice, this list of conditions and the following disclaimer.
12 .\" 2. Redistributions in binary form must reproduce the above copyright
13 .\"    notice, this list of conditions and the following disclaimer in the
14 .\"    documentation and/or other materials provided with the distribution.
15 .\" 3. All advertising materials mentioning features or use of this software
16 .\"    must display the following acknowledgement:
17 .\"     This product includes software developed by the University of
18 .\"     California, Berkeley and its contributors.
19 .\" 4. Neither the name of the University nor the names of its contributors
20 .\"    may be used to endorse or promote products derived from this software
21 .\"    without specific prior written permission.
22 .\"
23 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 .\" SUCH DAMAGE.
34 .\"
35 .\"     @(#)cat.1       8.3 (Berkeley) 5/2/95
36 .\" $FreeBSD: src/bin/cat/cat.1,v 1.10.2.9 2001/12/14 14:22:08 ru Exp $
37 .\"
38 .Dd September 15, 2001
39 .Dt CAT 1
40 .Os
41 .Sh NAME
42 .Nm cat
43 .Nd concatenate and print files
44 .Sh SYNOPSIS
45 .Nm
46 .Op Fl benstuv
47 .Op Ar
48 .Sh DESCRIPTION
49 The
50 .Nm
51 utility reads files sequentially, writing them to the standard output.
52 The
53 .Ar file
54 operands are processed in command-line order.
55 If
56 .Ar file
57 is a single dash
58 .Pq Sq \&-
59 or absent,
60 .Nm
61 reads from the standard input.
62 If
63 .Ar file
64 is a
65 .Ux
66 domain socket,
67 .Nm
68 connects to it and then reads it until
69 .Dv EOF .
70 This complements the
71 .Ux
72 domain binding capability available in
73 .Xr inetd 8 .
74 .Pp
75 The options are as follows:
76 .Bl -tag -width indent
77 .It Fl b
78 Number the non-blank output lines, starting at 1.
79 .It Fl e
80 Display non-printing characters (see the
81 .Fl v
82 option), and display a dollar sign
83 .Pq Ql \&$
84 at the end of each line.
85 .It Fl n
86 Number the output lines, starting at 1.
87 .It Fl s
88 Squeeze multiple adjacent empty lines, causing the output to be
89 single spaced.
90 .It Fl t
91 Display non-printing characters (see the
92 .Fl v
93 option), and display tab characters as
94 .Ql ^I .
95 .It Fl u
96 The
97 .Fl u
98 option guarantees that the output is unbuffered.
99 .It Fl v
100 Display non-printing characters so they are visible.
101 Control characters print as
102 .Ql ^X
103 for control-X; the delete
104 character (octal 0177) prints as
105 .Ql ^? .
106 .Pf Non- Tn ASCII
107 characters (with the high bit set) are printed as
108 .Ql M-
109 (for meta) followed by the character for the low 7 bits.
110 .El
111 .Sh DIAGNOSTICS
112 .Ex -std
113 .Sh EXAMPLES
114 The command:
115 .Bd -literal -offset indent
116 .Ic cat file1
117 .Ed
118 .Pp
119 will print the contents of
120 .Ar file1
121 to the standard output.
122 .Pp
123 The command:
124 .Bd -literal -offset indent
125 .Ic cat file1 file2 > file3
126 .Ed
127 .Pp
128 will sequentially print the contents of
129 .Ar file1
130 and
131 .Ar file2
132 to the file
133 .Ar file3 ,
134 truncating
135 .Ar file3
136 if it already exists.
137 See the manual page for your shell (i.e.,
138 .Xr sh 1 )
139 for more information on redirection.
140 .Pp
141 The command:
142 .Bd -literal -offset indent
143 .Ic cat file1 - file2 - file3
144 .Ed
145 .Pp
146 will print the contents of
147 .Ar file1 ,
148 print data it receives from the standard input until it receives an
149 .Dv EOF
150 .Pq Sq ^D
151 character, print the contents of
152 .Ar file2 ,
153 read and output contents of the standard input again, then finally output
154 the contents of
155 .Ar file3 .
156 Note that if the standard input referred to a file, the second dash
157 on the command-line would have no effect, since the entire contents of the file
158 would have already been read and printed by
159 .Nm
160 when it encountered the first
161 .Ql \&-
162 operand.
163 .Sh SEE ALSO
164 .Xr head 1 ,
165 .Xr more 1 ,
166 .Xr pr 1 ,
167 .Xr sh 1 ,
168 .Xr tail 1 ,
169 .Xr vis 1 ,
170 .Xr zcat 1 ,
171 .Xr setbuf 3
172 .Rs
173 .%A Rob Pike
174 .%T "UNIX Style, or cat -v Considered Harmful"
175 .%J "USENIX Summer Conference Proceedings"
176 .%D 1983
177 .Re
178 .Sh STANDARDS
179 The
180 .Nm
181 utility is compliant with the
182 .St -p1003.2-92
183 specification.
184 .Pp
185 The flags
186 .Op Fl benstv
187 are extensions to the specification.
188 .Sh HISTORY
189 A
190 .Nm
191 utility appeared in
192 .At v1 .
193 .An Dennis Ritchie
194 designed and wrote the first man page.
195 It appears to have been
196 .Xr cat 1 .
197 .Sh BUGS
198 Because of the shell language mechanism used to perform output
199 redirection, the command
200 .Dq Li cat file1 file2 > file1
201 will cause the original data in file1 to be destroyed!