概述
nl 命令为标准输入或指定文件的每一行添加行号并输出到标准输出。它主要用于提高文本文件的可读性或引用特定行。
主要功能
- 文件行号标记
- 控制空行的行号标记
- 自定义行号格式和分隔符
- 设置页眉/正文/页脚区域的行号标记
主要选项
nl 命令的主要选项用于控制行号标记方式、格式和分隔符。
行号标记方式
行号格式和分隔符
生成的命令:
请尝试组合命令。
描述:
`nl` 执行命令。
通过组合这些选项,您可以与 AI 一起虚拟地执行命令。
使用示例
通过 nl 命令的各种使用示例,了解如何有效地为文件的行添加行号。
基本行号标记
echo -e 'Line 1\n\nLine 3' | nl
为文件的所有行添加行号。(默认行为)
仅为非空行添加行号
echo -e 'Line 1\n\nLine 3' | nl -b t
仅为有内容的行添加行号,跳过空行。
使用自定义分隔符
echo -e 'First line\nSecond line' | nl -s ' -> '
在行号和文本之间使用特定的字符串作为分隔符。
指定行号宽度和格式
echo -e 'Line 1\nLine 10\nLine 100' | nl -w 3 -n rz
将行号的最小宽度设置为 3,并使用零填充右对齐。
仅为匹配正则表达式的行添加行号
echo -e 'Line 1\nAnother line\nLine 2' | nl -b p'^Line'
仅为匹配特定正则表达式 (`^Line`) 的行添加行号。
提示与注意事项
为了更有效地使用 nl 命令,这里提供一些提示和需要注意的事项。
使用技巧
- 可以与其他文本处理命令(例如 `grep`、`sed`、`awk`)通过管道符(`|`)连接,仅为特定条件的行添加行号,或者在已添加行号的文件上执行进一步操作。
- 默认情况下,`nl` 使用制表符作为分隔符,因此根据终端设置,行号和文本之间的间距可能会有所不同。建议使用 `-s` 选项指定显式分隔符。
- 使用 `-b pREGEX` 选项时,正则表达式遵循基本正则表达式(BRE)语法。如果需要使用扩展正则表达式(ERE),可以考虑使用 `grep -n` 或 `awk` 代替 `nl`。