xref: /freebsd/usr.bin/tail/tail.1 (revision 9a14aa017b21c292740c00ee098195cd46642730)
1.\" Copyright (c) 1980, 1990, 1991, 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.\" 4. Neither the name of the University nor the names of its contributors
16.\"    may be used to endorse or promote products derived from this software
17.\"    without specific prior written permission.
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
20.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
23.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29.\" SUCH DAMAGE.
30.\"
31.\"	@(#)tail.1	8.1 (Berkeley) 6/6/93
32.\" $FreeBSD$
33.\"
34.Dd June 5, 2009
35.Dt TAIL 1
36.Os
37.Sh NAME
38.Nm tail
39.Nd display the last part of a file
40.Sh SYNOPSIS
41.Nm
42.Op Fl F | f | r
43.Op Fl q
44.Oo
45.Fl b Ar number | Fl c Ar number | Fl n Ar number
46.Oc
47.Op Ar
48.Sh DESCRIPTION
49The
50.Nm
51utility displays the contents of
52.Ar file
53or, by default, its standard input, to the standard output.
54.Pp
55The display begins at a byte, line or 512-byte block location in the
56input.
57Numbers having a leading plus
58.Pq Ql +
59sign are relative to the beginning
60of the input, for example,
61.Dq Li "-c +2"
62starts the display at the second
63byte of the input.
64Numbers having a leading minus
65.Pq Ql -
66sign or no explicit sign are
67relative to the end of the input, for example,
68.Dq Li "-n 2"
69displays the last two lines of the input.
70The default starting location is
71.Dq Li "-n 10" ,
72or the last 10 lines of the input.
73.Pp
74The options are as follows:
75.Bl -tag -width indent
76.It Fl b Ar number
77The location is
78.Ar number
79512-byte blocks.
80.It Fl c Ar number
81The location is
82.Ar number
83bytes.
84.It Fl f
85The
86.Fl f
87option causes
88.Nm
89to not stop when end of file is reached, but rather to wait for additional
90data to be appended to the input.
91The
92.Fl f
93option is ignored if the standard input is a pipe, but not if it is a FIFO.
94.It Fl F
95The
96.Fl F
97option implies the
98.Fl f
99option, but
100.Nm
101will also check to see if the file being followed has been renamed or rotated.
102The file is closed and reopened when
103.Nm
104detects that the filename being read from has a new inode number.
105.Pp
106If the file being followed does not (yet) exist or if it is removed, tail
107will keep looking and will display the file from the beginning if and when
108it is created.
109.Pp
110The
111.Fl F
112option is the same as the
113.Fl f
114option if reading from standard input rather than a file.
115.It Fl n Ar number
116The location is
117.Ar number
118lines.
119.It Fl q
120Suppresses printing of headers when multiple files are being examined.
121.It Fl r
122The
123.Fl r
124option causes the input to be displayed in reverse order, by line.
125Additionally, this option changes the meaning of the
126.Fl b , c
127and
128.Fl n
129options.
130When the
131.Fl r
132option is specified, these options specify the number of bytes, lines
133or 512-byte blocks to display, instead of the bytes, lines or blocks
134from the beginning or end of the input from which to begin the display.
135The default for the
136.Fl r
137option is to display all of the input.
138.El
139.Pp
140If more than a single file is specified, each file is preceded by a
141header consisting of the string
142.Dq Li "==> " Ns Ar XXX Ns Li " <=="
143where
144.Ar XXX
145is the name of the file unless
146.Fl q
147flag is specified.
148.Sh EXIT STATUS
149.Ex -std
150.Sh SEE ALSO
151.Xr cat 1 ,
152.Xr head 1 ,
153.Xr sed 1
154.Sh STANDARDS
155The
156.Nm
157utility is expected to be a superset of the
158.St -p1003.2-92
159specification.
160In particular, the
161.Fl F ,
162.Fl b
163and
164.Fl r
165options are extensions to that standard.
166.Pp
167The historic command line syntax of
168.Nm
169is supported by this implementation.
170The only difference between this implementation and historic versions
171of
172.Nm ,
173once the command line syntax translation has been done, is that the
174.Fl b ,
175.Fl c
176and
177.Fl n
178options modify the
179.Fl r
180option, i.e.,
181.Dq Li "-r -c 4"
182displays the last 4 characters of the last line
183of the input, while the historic tail (using the historic syntax
184.Dq Li -4cr )
185would ignore the
186.Fl c
187option and display the last 4 lines of the input.
188.Sh HISTORY
189A
190.Nm
191command appeared in PWB UNIX.
192