| 1 | .\" Copyright (c) 1989, 1990 The Regents of the University of California. |
| 2 | .\" All rights reserved. |
| 3 | .\" |
| 4 | .\" %sccs.include.redist.man% |
| 5 | .\" |
| 6 | .\" @(#)cat.1 6.14 (Berkeley) %G% |
| 7 | .\" |
| 8 | .Dd |
| 9 | .Dt CAT 1 |
| 10 | .Os BSD 3 |
| 11 | .Sh NAME |
| 12 | .Nm cat |
| 13 | .Nd concatenate and print files |
| 14 | .Sh SYNOPSIS |
| 15 | .Nm cat |
| 16 | .Op Fl benstuv |
| 17 | .Op Fl |
| 18 | .Op Ar |
| 19 | .Sh DESCRIPTION |
| 20 | The |
| 21 | .Nm cat |
| 22 | utility reads files sequentially, writing them to the standard output. |
| 23 | The |
| 24 | .Ar file |
| 25 | operands are processed in command line order. |
| 26 | A single dash represents standard input. |
| 27 | .Pp |
| 28 | The options are as follows: |
| 29 | .Bl -tag -width Ds |
| 30 | .It Fl b |
| 31 | Implies the |
| 32 | .Fl n |
| 33 | option but doesn't number blank lines. |
| 34 | .It Fl e |
| 35 | Implies the |
| 36 | .Fl v |
| 37 | option, and displays a dollar sign |
| 38 | .Pq Ql \&$ |
| 39 | at the end of each line |
| 40 | as well. |
| 41 | .It Fl n |
| 42 | Number the |
| 43 | .Ar output |
| 44 | lines, starting at 1. |
| 45 | .It Fl s |
| 46 | Squeeze multiple adjacent empty lines, causing the output to be |
| 47 | single spaced. |
| 48 | .It Fl t |
| 49 | Implies the |
| 50 | .Fl v |
| 51 | option, and displays tab characters as |
| 52 | .Pq Ql ^I |
| 53 | as well. |
| 54 | .It Fl u |
| 55 | The |
| 56 | .Fl u |
| 57 | option guarantees that the output is unbuffered. |
| 58 | .It Fl v |
| 59 | Displays non-printing characters so they are visible. |
| 60 | Control characters print line |
| 61 | .Ql ^X |
| 62 | for control-X; the delete |
| 63 | character (octal 0177) prints as |
| 64 | .Ql ^? |
| 65 | Non-ascii characters (with the high bit set) are printed as |
| 66 | .Ql M- |
| 67 | (for meta) followed by the character for the low 7 bits. |
| 68 | .El |
| 69 | .Pp |
| 70 | .Nm Cat |
| 71 | is useful for getting files into a pipe, for instance, to sort |
| 72 | two files together, |
| 73 | the command |
| 74 | .Pp |
| 75 | .Dl cat file1 file2 | sort > sfile |
| 76 | .Pp |
| 77 | reads the contents of |
| 78 | file1 and file2 sequentially, pipes it all to sort and places the |
| 79 | newly sorted data in file3. |
| 80 | .Pp |
| 81 | Because of the shell language mechanism used to perform output |
| 82 | redirection, the command |
| 83 | .Dq Li cat file1 file 2 > file1 |
| 84 | will cause |
| 85 | original data in file1 to be destroyed! |
| 86 | .Pp |
| 87 | .Nm Cat |
| 88 | The cat utility exits 0 on success, and >0 if an error |
| 89 | occurs. |
| 90 | .Sh SEE ALSO |
| 91 | .Xr head 1 , |
| 92 | .Xr more 1 , |
| 93 | .Xr pr 1 , |
| 94 | .Xr tail 1 |
| 95 | .Rs |
| 96 | .%A Rob Pike |
| 97 | .%T "UNIX Style, or cat -v Considered Harmful" |
| 98 | .%J "USENIX Summer Conference Proceedings" |
| 99 | .%D 1983 |
| 100 | .Re |
| 101 | .Sh HISTORY |
| 102 | A |
| 103 | .Nm |
| 104 | command appeared in Version 6 AT&T UNIX. |