SYNOPSIS
tail
[
tail
+[num][[
tail
DESCRIPTION
Calling tail without options displays the last 10 lines of file. This is useful for seeing the most recent entries in log files or any file where new information is appended.
Besides normal ASCII text files, tail also works on
UTF-8 files and 16-bit wide Unicode files. Such files normally begin with
a multiple-byte marker indicating whether the file's contents are Unicode
big-endian, Unicode little-endian, or UTF-8. Such files are detected
automatically by tail; however, when the multiple-byte
marker is missing you can use the
Normally, tail's output format defaults to the format
of the first file it displays unless the
Options
All tail options except
-b [± ]num± [num]b -
begins displaying the file at a location determined by num. If num is preceded by a minus sign (-)or no sign at all, tail displays the last num blocks of the file. If num is preceded by a plus sign (+), tail displays the file beginning with the numth block. For these purposes, a block is 512 characters. As a result,
-b num is equivalent to-c num x 512.If num is not specified, tail behaves as if num was 10.
-c [± ]num± [num]c -
is similar to the
b option, but num is in characters rather than blocks. -f f -
monitors a file as it grows. Every two seconds, tail wakes up and displays any new data at the end of the file. This flag is ignored if reading from the standard input and standard input is a pipe.
-k [± ]num± [num]k -
is similar to the
b option, but num is groups of 1024 characters rather than blocks. Thus,-k num is equivalent to-c num x 1024. For files with single byte characters, this is equivalent to num kilobytes. -l [± ]num± [num]l -
is similar to the
b option, but num is in lines rather than blocks. -m [± ]num± [num]m -
is similar to the
b option, but num is in groups of 1048576 characters (1024 x 1024 characters) rather than blocks. Thus,-m num is equivalent to-c num x 1024 x 1024. For files with single byte characters, this is equivalent to num megabytes. -n [± ]num± [num]n -
is similar to the
b option, but num is in lines rather than blocks. -U [[[c ][lb8oa ]][p [lb8oa ]]]-
specifies the input format of any file missing the initial multiple-byte marker, the output format produced, or both.
When
c is specified, the specifiers that follow it apply to the input consumed.When
p is specified, the specifiers that follow it apply to the output produced.When neither
c norp are specified, the remaining-U specifiers apply to the input consumed.When both
c andp are specified, the remaining-U arguments apply to both input and output.The remaining specifiers indicate the format of the characters read from input or written to output (as determined by
c andp ):l little-endian 16-bit wide charactersb big-endian 16-bit wide characters8 UTF-8 charactersa ASCII characters from the ANSI code pageo ASCII characters from the OEM code pageWhen multiple format specifiers can be associated with either c or p, the last appropriate one given on the command for each of c and p is used. For example:
-Ucoapl8 is the same as:
-Ucap8 When a p specifier is given without a c specifier and format specifiers are given before the p specifier, those format specifiers apply to the input. For example:
-Uopl is the same as:
-Ucopl When c or p is specified with no format specifies, little endian 16-bit wide characters are used by default for either input or output, as appropriate.
As an alternative to specifying formats for both input and output with the same
-U option, you can specify the-U option multiple times. For example, the following are identical:-Uca -Upb -Ucapb - Note:
-
The
-U specifiers are actually case-insensitive. For example, the following are all identical in their behavior:-Ucl -UcL -UCl -UCL
- num-
displays the last num lines of the file.
+ num-
displays the file beginning with its numth line.
EXAMPLES
These five commands all display the last 10 characters of a file:
tail -c10 filename tail -c -10 filename tail -10c filename tail -c filename
These three commands all display a file beginning with its 10th character:
tail -c +10 filename tail +10c filename tail +c filename
ENVIRONMENT VARIABLES
- TK_STDIO_DEFAULT_INPUT_FORMAT
-
Sets the default input format for files that don't have the initial multibyte marker. The value must be one of those listed in the File Character Formats section of the unicode reference page.
- TK_STDIO_DEFAULT_OUTPUT_FORMAT
-
Sets the default output format. Normally the format of the first file read is used as the default output format. The value must be one of those listed in the File Character Formats section of the unicode reference page.
DIAGNOSTICS
Possible exit status values are:
- 0
-
Successful completion.
- 1
-
Failure due to any of the following:
- 2
-
Failure due to an unknown command line option.
Messages
- Badly formed line/byte count "string"
-
In an option of the form
-n num or- num, the num was not a valid number. - Re-opening file descriptor "num"
-
-f was used to follow a file as it grows. tail closed the file associated with the given file descriptor num then tried to open it two seconds later. At this point, tail found it could not re-open the file for reading and, therefore, could not follow the file any longer.
PORTABILITY
POSIX.2. x/OPEN Portability Guide 4.0. All UNIX systems. Windows 10. Windows Server 2016. Windows Server 2019. Windows 11. Windows Server 2022. Windows Server 2025.
The POSIX standard considers all but the first SYNOPSIS line to be
obsolescent and does not include the use of
AVAILABILITY
PTC MKS Toolkit for Power Users
PTC MKS Toolkit for System Administrators
PTC MKS Toolkit for Developers
PTC MKS Toolkit for Interoperability
PTC MKS Toolkit for Professional Developers
PTC MKS Toolkit for Professional Developers 64-Bit Edition
PTC MKS Toolkit for Enterprise Developers
PTC MKS Toolkit for Enterprise Developers 64-Bit Edition
SEE ALSO
PTC MKS Toolkit 10.5 Documentation Build 40.