tail(1) — Commands
NAME
tail − Writes a file to standard output, beginning at a specified point
SYNOPSIS
tail [-f | -r ] [-c number | -n number][file]
tail [+number | -number][unit][−f | -r][file]
The tail command writes the named file (standard input by default) to standard output, beginning at a point you specify.
FLAGS
-c number
Displays the remainder of the file from the starting point number where number is measured in bytes. The sign of number affects the location in the file at which to begin the copying:
+ (plus sign)
Copying begins relative to the beginning of the file.
- (minus sign)
Copying begins relative to the end of the file.
no signCopying begins relative to the end of the file. The origin for counting is 1, that is, -c +1 represents the first byte of the file, -c -1 the last.
-fDoes not end after it copies the last line of the input file if the input file is not read from a pipe, but enters an endless loop in which it sleeps for a second and then attempts to read and copy further records from the input file. Thus, it can be used to monitor the growth of a file being written by another process. Has no effect if specified with -r.
-n number
Displays remainder of file from the starting point number where number is measured in lines. The sign of number affects the location in the file, measured in lines, to begin the copying:
+ (plus) sign
Copying begins relative to the beginning of the file.
- (minus) sign
Copying begins relative to the end of the file.
no signCopying begins relative to the end of the file. The origin for counting is 1, that is, -n +1 represents the first byte of the file, -n -1 the last.
-rCauses tail to print lines from the end of the file in reverse order. The default for -r is to print the entire file this way. Overrides -f.
−[number]l
−[number]b
−[number]k
−[number]c
−[number]m
Begins reading number lines (l), 512-byte blocks (b), kilobyte blocks (k), characters (c and m) from the end of the input. The m argument counts multi-byte characters as single-byte characters, while c counts characters byte-by-byte but does not break multi-byte characters.
The default unit is l for lines. The default number is 10 for all units.
+[number]l
+[number]b
+[number]k
+[number]c
+[number]m
Begins reading number lines (l), 512-byte blocks (b), 1-kilobyte blocks (k), or characters (c and m) from the beginning of the input. The m argument counts multi-byte characters as single-byte characters, while c counts characters byte-by-byte but does not break multi-byte characters.
The default unit is l for lines. The default number is 10 for all units.
DESCRIPTION
If you do not specify -f, -r, -number, or +number, tail begins reading 10 lines before the end of the file. - (end of input) is the default starting point, l (lines) is the default unit, and 10 is the default number.
By specifying +, you can direct tail to read from the beginning of the file. By specifying a number or a unit, or both, you can change the point at which tail begins reading.
The unit argument can specify lines, blocks, or characters. The tail command can begin reading number (10 by default) units from either the end or the beginning of the file.
The block size is either 512 bytes or 1 kilobyte.
EXAMPLES
1.To display the last 10 lines of a file named notes, enter:
tail notes
2.To specify how far from the end to start, enter:
tail -20 notes
This displays the last 20 lines of notes.
3.To specify how far from the beginning to start, enter:
tail +200c notes ⏐ more
This displays notes a page at a time, starting with the 200th character from the beginning.
4.To follow the growth of a file named accounts, enter:
tail -1 -f accounts
This displays the last line of accounts. Once every second, tail displays any lines that have been added to the file. This continues until stopped by pressing the Interrupt key sequence.