Head_(Unix)

head (Unix)

head (Unix)

Program on Unix and Unix-like systems


head is a program on Unix and Unix-like operating systems used to display the beginning of a text file or piped data.

Quick Facts Developer(s), Operating system ...

Syntax

The command syntax is:

head [options] file_name

By default, head will print the first 10 lines of its input to the standard output.

Option flags

-n count
--lines=count
The number of lines printed may be changed with a command line option. The following example shows the first 20 lines of filename:
head -n 20 ''filename''

This displays the first 5 lines of all files starting with foo:

head -n 5 ''foo*''
Most versions[citation needed] allow omitting n and instead directly specifying the number: -5. GNU head allows negative arguments for the -n option, meaning to print all but the last - argument value counted - lines of each input file.
-c bytes
--bytes=bytes
Print first x number of bytes.

Other command

Many early versions of Unix and Plan 9 did not have this command, and documentation and books used sed instead:

sed 5q filename

The example prints every line (implicit) and quit after the fifth.

Equivalently, awk may be used to print the first five lines in a file:

awk 'NR < 6' filename

However, neither sed nor awk were available in early versions of BSD, which were based on Version 6 Unix, and included head.[1]

Implementations

A head command is also part of ASCII's MSX-DOS2 Tools for MSX-DOS version 2.[2] The head command has also been ported to the IBM i operating system.[3]

See also


References

  1. Spinellis, Diomidis (2022). "dspinellis/unix-history-man: Version 1.0 web pages (v1.1-web)". Zenodo. doi:10.5281/zenodo.7248228.

Share this article:

This article uses material from the Wikipedia article Head_(Unix), and is written by contributors. Text is available under a CC BY-SA 4.0 International License; additional terms may apply. Images, videos and audio are available under their respective licenses.