OpenBSD manual page server

Manual Page Search Parameters

TAIL(1) General Commands Manual TAIL(1)

taildisplay the last part of a file

tail [-f | -r] [-b number | -c number | -n number | -number] [file ...]

The tail utility displays the contents of file or, by default, its standard input, to the standard output.

The display begins at a byte, line, or 512-byte block location in the input. Numbers having a leading plus (‘+’) sign are relative to the beginning of the input, for example, -c +2 starts the display at the second byte of the input. Numbers having a leading minus (‘-’) sign or no explicit sign are relative to the end of the input, for example, -n 2 displays the last two lines of the input. The default starting location is -n 10, or the last 10 lines of the input.

The options are as follows:

number
The location is number 512-byte blocks.
number
The location is number bytes.
Do not stop when end-of-file is reached; instead, wait for additional data to be appended to the input. If the file is replaced (i.e., the inode number changes), tail will reopen the file and continue. If the file is truncated, tail will reset its position to the beginning. This makes tail more useful for watching log files that may get rotated. The -f option is ignored if there are no file arguments and the standard input is a pipe or a FIFO.
number | -number
The location is number lines.
The -r option causes the input to be displayed in reverse order, by line. Additionally, this option changes the meaning of the -b, -c, and -n options. When the -r option is specified, these options specify the number of bytes, lines or 512-byte blocks to display, instead of the bytes, lines, or blocks from the beginning or end of the input from which to begin the display. The default for the -r option is to display all of the input.

If more than one file is specified, tail precedes the output of each file with the following, in order to distinguish files:

==> file <==

The tail utility exits 0 on success, and >0 if an error occurs.

To display the last 500 lines of the file foo:

$ tail -500 foo

Keep /var/log/messages open, displaying to the standard output anything appended to the file:

$ tail -f /var/log/messages

cat(1), head(1), sed(1)

The tail utility is compliant with the IEEE Std 1003.1-2008 (“POSIX.1”) specification.

The flags [-br] are extensions to that specification.

The historic command line syntax of tail is supported by this implementation. The only difference between this implementation and historic versions of tail, once the command line syntax translation has been done, is that the -b, -c and -n options modify the -r option, i.e., -r -c 4 displays the last 4 characters of the last line of the input, while the historic tail (using the historic syntax -4cr) would ignore the -c option and display the last 4 lines of the input.

A tail command first appeared outside of Bell Labs in PWB/UNIX 1.0.

August 3, 2022 OpenBSD-current