Caution: This version of this document is no longer maintained. For the latest documentation, see


Copy the first part of files (POSIX)


head [-number] [-c|-l] [-n number] [file]...

Runs on:



Deprecated; use -n number instead.
Measure the quantity of output in bytes.
(“el”) Measure the quantity of output in lines; this is the default unit of measure.
-n number
The number of lines (default) or bytes output. The number argument is an unsigned decimal integer. If you omit the -n number option, the default is the first ten units (lines or bytes) of the file.
The pathname of an input file. If you don't specify any files, the standard input is used.


The head utility copies its input files to the standard output. The utility ends the output for each file at a point designated by the -n number option. The number argument is counted in bytes if you choose the -c option, and in lines if you choose the -l option.

If you specify multiple files, head prints an identifying header before the output for each file.


Display the first ten lines of all files in the current directory:

    head *

Print the first 16 bytes of myfile in hex:

    head -c -n 16 myfile | hd

(Note that in this case, the same functionality is offered through command-line options to hd.)

Exit status:

Successful completion.
An error occurred.

See also:

cat, less, more, tail