TAIL(1)

๐Ÿ’– TAIL(1) โ€” the last-lines queen ๐Ÿ’–

okay bestie, welcome to tail(1), the User Commands era of the manual pages, and honestly? she's iconic. she shows you the end of things. the finale. the last word. main character energy but make it a file ๐Ÿ’…


โœจ NAME โœจ

tail โ€” output the last part of files ๐ŸŽ€


๐ŸŒธ SYNOPSIS ๐ŸŒธ

tail [OPTION]... [FILE]...

๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

so basically: print the last 10 lines of each FILE to standard output. if you hand her more than one FILE, she's gonna precede each one with a header giving the file name, because she's polite like that โœจ

with no FILE, or when FILE is -, she reads standard input. classic. no cap ๐Ÿซถ

also, mandatory arguments to long options are mandatory for short options too. yes bestie, the rules apply to everyone ๐Ÿ˜Œ

๐Ÿ’… the options, one by one, no skipping, we don't do that here ๐Ÿ’…

  • -c, --bytes=[+]NUM โ€” output the last NUM bytes; or use -c +NUM to output starting with byte NUM of each file ๐Ÿ“
  • --debug โ€” indicate which --follow implementation is used ๐Ÿ”
  • -f, --follow[={name|descriptor}] โ€” output appended data as the file grows; an absent option argument means 'descriptor' ๐ŸŒฑ
  • -F โ€” same as --follow=name --retry ๐Ÿ’–
  • -n, --lines=[+]NUM โ€” output the last NUM lines, instead of the last 10; or use -n +NUM to skip NUM-1 lines at the start โœจ
  • --max-unchanged-stats=N โ€” with --follow=name, reopen a FILE which has not changed size after N (default 5) iterations to see if it has been unlinked or renamed (this is the usual case of rotated log files); with inotify, this option is rarely useful ๐Ÿ‘€
  • --pid=PID โ€” with -f, exit after PID no longer exists; can be repeated to watch multiple processes ๐Ÿงš
  • -q, --quiet, --silent โ€” never output headers giving file names ๐Ÿคซ
  • --retry โ€” keep trying to open a file if it is inaccessible ๐Ÿ”
  • -s, --sleep-interval=N โ€” with -f, sleep for approximately N seconds (default 1.0) between iterations; with inotify and --pid=P, check process P at least once every N seconds ๐Ÿ˜ด
  • -v, --verbose โ€” always output headers giving file names ๐Ÿ“ฃ
  • -z, --zero-terminated โ€” line delimiter is NUL, not newline โญ
  • --help โ€” display this help and exit ๐Ÿซถ
  • --version โ€” output version information and exit ๐Ÿ‘‘

๐Ÿ”ข NUM got multipliers, bestie ๐Ÿ”ข

NUM may have a multiplier suffix: b 512, kB 1000, K 1024, MB 1000*1000, M 1024*1024, GB 1000*1000*1000, G 1024*1024*1024, and so on for T, P, E, Z, Y, R, Q. Binary prefixes can be used, too: KiB=K, MiB=M, and so on. the way she just keeps going ๐Ÿ˜ญ


๐ŸŒˆ the --follow lore (read this one fr fr) ๐ŸŒˆ

with --follow (-f), tail defaults to following the file descriptor, which means that even if a tail'ed file is renamed, tail will continue to track its end. this default behavior is not desirable when you really want to track the actual name of the file, not the file descriptor (e.g., log rotation). use --follow=name in that case. that causes tail to track the named file in a way that accommodates renaming, removal and creation. periodt. ๐Ÿ’…

lowkey important: if you're tailing a rotated log and it's acting cursed, this paragraph is your bestie. --follow=name is the vibe check you needed.

๐Ÿ’œ AUTHOR ๐Ÿ’œ

Written by Paul Rubin, David MacKenzie, Ian Lance Taylor, and Jim Meyering. kings, honestly ๐Ÿ‘‘


๐Ÿ™ˆ REPORTING BUGS ๐Ÿ™ˆ

Report bugs to: <bug-coreutils@gnu.org>. Report any translation bugs to: <https://translationproject.org/team/>. GNU coreutils home page: <https://www.gnu.org/software/coreutils/> General help using GNU software: <https://www.gnu.org/gethelp/>


Copyright ยฉ 2026 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.


๐Ÿ‘‘ SEE ALSO ๐Ÿ‘‘

Full documentation <https://www.gnu.org/software/coreutils/tail> or available locally via: info '(coreutils) tail invocation'


and that's the whole page, bestie ๐Ÿซถ this one's from GNU coreutils 9.12, dated September 2026 โ€” so like, go forth and read the last 10 lines of everything. slay ๐Ÿ’–โœจ๐Ÿฆ‹

๐Ÿ“ฆ where this page comes from