nl - line numbering filter
/usr/bin/nl [-p] [ -b [type]] [ -d [delim]] [ -f [type]] [
-h [type]] [ -i [incr]] [ -l [num]] [ -n [format]] [ -s
[sep]] [ -w [width]] [ -v [startnum]] [file]
/usr/xpg4/bin/nl [-p] [-b type] [-d delim] [-f type] [-
h type] [-i incr] [-l num] [-n format] [-s sep] [-w width]
[-v startnum] [file]
The nl utility reads lines from the named file, or the stan-
dard 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 log-
ical page consists of a header, a body, and a footer sec-
tion. Empty sections are valid. Different line numbering
options are independently available for header, body, and
footer. For example, -bt (the default) numbers non-blank
lines in the body section and does not number any lines in
the header and footer sections.
The start of logical page sections are signaled by input
lines containing nothing but the following delimiter
| Line contents | Start Of |
| \:\:\: | header |
| \:\: | body |
| \: | footer |
Unless optioned otherwise, nl assumes the text being read is
in a single logical page body.
Command options may appear in any order and may be intermin-
gled with an optional file name. Only one file may be named.
The specified default is used when the option is not entered
on the command line. /usr/xpg4/bin/nl options require option
arguments. A SPACE character may separate options from
option arguments. /usr/bin/nl options may have option
arguments. If option-arguments of /usr/bin/nl options are
not specified, these options result in the default. The sup-
ported options are:
Specifies which logical page body lines are to be num-
bered. Recognized types and their meanings are:
a number all lines
t number all non-empty lines.
n no line numbering
pexp number only lines that contain the regular expression
specified in exp. See NOTES below.
Default type for logical page body is t (text lines num-
Same as -btype except for footer. Default type for
logical page footer is n (no lines numbered).
The two delimiter characters specifying the start of a
logical page section may be changed from the default
characters (\:) to two user-specified characters. If
only one character is entered, the second character
remains the default character (:). No space should
appear between the -d and the delimiter characters. To
enter a backslash, use two backslashes.
Same as -btype except for header. Default type for
logical page header is n (no lines numbered).
incr is the increment value used to number logical
page lines. Default incr is 1.
-lnum num is the number of blank lines to be considered as
one. For example, -l2 results in only the second adja-
cent blank being numbered (if the appropriate -ha,
-ba, and/or -fa option is set). Default num is 1.
format is the line numbering format. Recognized values
ln left justified, leading zeroes suppressed
rn right justified, leading zeroes suppressed
rz right justified, leading zeroes kept
Default format is rn (right justified).
-p Do not restart numbering at logical page delimiters.
-ssep sep is the character(s) used in separating the line
number and the corresponding text line. Default sep is
startnum is the initial value used to number logical
page lines. Default startnum is 1.
width is the number of characters to be used for the
line number. Default width is 6.
The following operand is supported:
file A path name of a text file to be line-numbered.
Example 1: An example of the nl command
example% nl -v10 -i10 -d!+ filename1
will cause the first line of the page body to be numbered
10, the second line of the page body to be numbered 20, the
third 30, and so forth. The logical page delimiters are !+.
See environ(5) for descriptions of the following environment
variables that affect the execution of nl: LANG, LC_ALL,
LC_COLLATE, LC_CTYPE, LC_MESSAGES, and NLSPATH.
The following exit values are returned:
0 Successful completion.
>0 An error occurred.
Collation table generated by localedef
Shared object containing string transformation library
See attributes(5) for descriptions of the following attri-
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Availability | SUNWesu |
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Availability | SUNWxcu4 |
| Interface Stability | Standard |
pr(1), attributes(5), environ(5), regex(5), regexp(5), stan-
Internationalized Regular Expressions are used in the POSIX
and "C" locales. In other locales, Internationalized Regular
Expressions are used if the following two conditions are
o /usr/lib/locale/locale/LC_COLLATE/CollTable is
o /usr/lib/locale/locale/LC_COLLATE/coll.so is not
Otherwise, Simple Regular Expressions are used.
Internationalized Regular Expressions are explained on
regex(5). Simple Regular Expressions are explained on
Man(1) output converted with