nl — number lines of files
Examples (TL;DR)
-
Number non-blank lines in a file:
nl file
-
Read from standard output:
cat file | nl options -
-
Number only the lines with printable text:
nl -t file
-
Number all lines including blank lines:
nl -b a file
-
Number only the body lines that match a basic regular expression (BRE) pattern:
nl -b p'FooBar[0-9]' file
Synopsis
nl [OPTION]... [FILE]...
Description
Write each FILE to standard output, with line numbers added.
With no FILE, or when FILE is -, read standard input.
Mandatory arguments to long options are mandatory for short options too.
- -b, --body-numbering=STYLE
use STYLE for numbering body lines
- -d, --section-delimiter=CC
use CC for logical page delimiters
- -f, --footer-numbering=STYLE
use STYLE for numbering footer lines
- -h, --header-numbering=STYLE
use STYLE for numbering header lines
- -i, --line-increment=NUMBER
line number increment at each line
- -l, --join-blank-lines=NUMBER
group of NUMBER empty lines counted as one
- -n, --number-format=FORMAT
insert line numbers according to FORMAT
- -p, --no-renumber
do not reset line numbers for each section
- -s, --number-separator=STRING
add STRING after (possible) line number
- -v, --starting-line-number=NUMBER
first line number for each section
- -w, --number-width=NUMBER
use NUMBER columns for line numbers
- --help
display this help and exit
- --version
output version information and exit
Default options are: -bt -d'\:' -fn -hn -i1 -l1 -n'rn' -s<TAB> -v1 -w6
CC are two delimiter characters used to construct logical page delimiters; a missing second character implies ':'.
STYLE is one of:
- a
number all lines
- t
number only nonempty lines
- n
number no lines
- pBRE
number only lines that contain a match for the basic regular expression, BRE
FORMAT is one of:
- ln
left justified, no leading zeros
- rn
right justified, no leading zeros
- rz
right justified, leading zeros
Reporting Bugs
GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
Report any translation bugs to <https://translationproject.org/team/>
Copyright
Copyright © 2019 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
See Also
Full documentation <https://www.gnu.org/software/coreutils/nl>
or available locally via: info '(coreutils) nl invocation'