nl reads lines from the named file, or the
standard input if no file is named, and reproduces the
lines on the standard output. Lines are numbered on the left in
accordance with the command options in effect.
nl views the text it reads in terms of logical pages. Line
numbering is reset at the start of each logical page. A logical page
consists of a header, a body, and a footer section. Empty sections
are valid. Different line numbering options are independently
available for header, body, and footer (for example, no numbering of
header and footer lines while numbering blank lines only in the
The start of logical page sections is signaled by input lines
containing nothing but one or more pairs of
Unless signaled otherwise, nl assumes the text being read
is in a single logical page body.
Command options may appear in any order and may be intermingled with
an optional filename.
Only one file may be named. The options are:
Specifies which logical page body lines are to be
numbered. Recognized types and their meaning are:
a, number all lines; t,
number only lines consisting entirely of printable characters;
n, no line numbering; pstring, number
only lines that contain the regular expression specified in
string. Default type for logical page body is
Specifies the two characters that show the start of a logical page
section. The default characters are \:; if only one
character is given for delim, nl assumes that
the second should be ``:''.
Same as -btype except for footer. Default for
logical page footer is n (no lines numbered).
Same as -btype except for header. Default
type for logical page header is n (no lines
incr is the increment value used to number logical page
lines. The default is 1.
num is the number of blank lines to be considered as
one. For example, -l2 results in only the second adjacent
blank being numbered (if the appropriate -ha,
-ba, and/or -fa option is set). The default is
format is the line numbering format. Recognized
left justified, leading zeroes suppressed
right justified, leading zeroes suppressed
right justified, leading zeroes kept
Default format is rn (right justified).
Does not restart numbering at logical page delimiters.
sep is the character(s) used in separating the line number
and the corresponding text line. Default sep is a tab.
start# is the initial value used to number logical page
lines. The default is 1.
width is the number of characters to be used for the line
number. The default width is 6.
Number the lines of the C program source file foo.c and