Nl (Unix)
Template:Short description Template:Lowercase Template:Infobox software nl is a Unix utility for numbering lines, either from a file or from standard input, reproducing output on standard output.
History
<syntaxhighlight lang="text" class="" style="" inline="1">nl</syntaxhighlight> is part of the X/Open Portability Guide since issue 2 of 1987. It was inherited into the first version of POSIX.1 and the Single Unix Specification.<ref>Template:Man</ref> It first appeared in System V release 2.<ref>Template:Man</ref>
The version of nl bundled in GNU coreutils was written by Scott Bartram and David MacKenzie.<ref>Template:Man</ref>
The command is available as a separate package for Microsoft Windows as part of the UnxUtils collection of native Win32 ports of common GNU Unix-like utilities.<ref>Template:Cite web</ref>
Syntax
The command has a number of switches:
- a - number all lines
- t - number lines with printable text only
- n - no line numbering
- string - number only those lines containing the regular expression defined in the string supplied.
The default applied switch is t.
nl also supports some command line options.
Example
<syntaxhighlight lang="bash">
$ nl tf
1 echo press cr
2 read cr
3 done
</syntaxhighlight> The following example numbers only the lines that begin with a capital letter A (matching on the regular expression /^A/). filename is optional. <syntaxhighlight lang="console"> $ nl -b p^A filename
apple
1 Apple
BANANA
2 Allspice
strawberry
</syntaxhighlight> It can be useful as an alternative to Template:Mono: <syntaxhighlight lang="console"> $ cat somefile aaaa bbbb cccc dddc $ nl somefile | grep cccc
3 cccc
</syntaxhighlight>
See also
- wc (Unix) – the word count command
- cat (Unix) – concatenate command (-n flag is equivalent to nl -a)
- List of Unix commands