head (Unix)
This article needs additional citations for verification. (June 2020) |
GPLv3 |
head is a
piped
data.
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 lineoption. 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 omittingn
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
- tail (Unix)
- dd (Unix)
- List of Unix commands
References
- .
- ^ MSX-DOS2 Tools User's Manual by ASCII Corporation
- ^ IBM. "IBM System i Version 7.2 Programming Qshell" (PDF). Retrieved 2020-09-05.
External links
The Wikibook Guide to Unix has a page on the topic of: Commands
- head manual page from coreutils.
- FreeBSD documentation for head