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.\" $DragonFly: src/bin/cat/cat.1,v 1.5 2006/02/17 19:33:30 swildner Exp $ 38.\" 39.Dd September 15, 2001 40.Dt CAT 1 41.Os 42.Sh NAME 43.Nm cat 44.Nd concatenate and print files 45.Sh SYNOPSIS 46.Nm 47.Op Fl benstuv 48.Op Ar 49.Sh DESCRIPTION 50The 51.Nm 52utility reads files sequentially, writing them to the standard output. 53The 54.Ar file 55operands are processed in command-line order. 56If 57.Ar file 58is a single dash 59.Pq Sq \&- 60or absent, 61.Nm 62reads from the standard input. 63If 64.Ar file 65is a 66.Ux 67domain socket, 68.Nm 69connects to it and then reads it until 70.Dv EOF . 71This complements the 72.Ux 73domain binding capability available in 74.Xr inetd 8 . 75.Pp 76The options are as follows: 77.Bl -tag -width indent 78.It Fl b 79Number the non-empty output lines, starting at 1. 80.It Fl e 81Display non-printing characters (see the 82.Fl v 83option), and display a dollar sign 84.Pq Ql \&$ 85at the end of each line. 86.It Fl n 87Number the output lines, starting at 1. 88.It Fl s 89Squeeze multiple adjacent empty lines, causing the output to be 90single spaced. 91.It Fl t 92Display non-printing characters (see the 93.Fl v 94option), and display tab characters as 95.Ql ^I . 96.It Fl u 97The 98.Fl u 99option guarantees that the output is unbuffered. 100.It Fl v 101Display non-printing characters so they are visible. 102Control characters print as 103.Ql ^X 104for control-X; the delete 105character (octal 0177) prints as 106.Ql ^? . 107.Pf Non- Tn ASCII 108characters (with the high bit set) are printed as 109.Ql M- 110(for meta) followed by the character for the low 7 bits. 111.El 112.Sh EXAMPLES 113The command: 114.Bd -literal -offset indent 115.Ic cat file1 116.Ed 117.Pp 118will print the contents of 119.Ar file1 120to the standard output. 121.Pp 122The command: 123.Bd -literal -offset indent 124.Ic cat file1 file2 > file3 125.Ed 126.Pp 127will sequentially print the contents of 128.Ar file1 129and 130.Ar file2 131to the file 132.Ar file3 , 133truncating 134.Ar file3 135if it already exists. 136See the manual page for your shell (i.e., 137.Xr sh 1 ) 138for more information on redirection. 139.Pp 140The command: 141.Bd -literal -offset indent 142.Ic cat file1 - file2 - file3 143.Ed 144.Pp 145will print the contents of 146.Ar file1 , 147print data it receives from the standard input until it receives an 148.Dv EOF 149.Pq Sq ^D 150character, print the contents of 151.Ar file2 , 152read and output contents of the standard input again, then finally output 153the contents of 154.Ar file3 . 155Note that if the standard input referred to a file, the second dash 156on the command-line would have no effect, since the entire contents of the file 157would have already been read and printed by 158.Nm 159when it encountered the first 160.Ql \&- 161operand. 162.Sh DIAGNOSTICS 163.Ex -std 164.Sh SEE ALSO 165.Xr head 1 , 166.Xr more 1 , 167.Xr pr 1 , 168.Xr sh 1 , 169.Xr tail 1 , 170.Xr vis 1 , 171.Xr zcat 1 , 172.Xr setbuf 3 173.Rs 174.%A Rob Pike 175.%T "UNIX Style, or cat -v Considered Harmful" 176.%J "USENIX Summer Conference Proceedings" 177.%D 1983 178.Re 179.Sh STANDARDS 180The 181.Nm 182utility conforms to 183.St -p1003.2-92 184and 185.St -p1003.1-2004 . 186.Pp 187The flags 188.Op Fl benstv 189are extensions to the specification. 190.Sh HISTORY 191A 192.Nm 193utility appeared in 194.At v1 . 195.An Dennis Ritchie 196designed and wrote the first man page. 197It appears to have been 198.Xr cat 1 . 199.Sh BUGS 200Because of the shell language mechanism used to perform output 201redirection, the command 202.Dq Li cat file1 file2 > file1 203will cause the original data in file1 to be destroyed! 204