news 2026/2/27 0:26:33

Linux 命令:nl

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux 命令:nl

概述

Linux 中的nl命令是带行号打印文件内容的工具,比基础的cat -n功能更灵活,支持对行号格式、编号规则(如是否跳过空行)进行精细化配置,是日常查看文件、排版输出的常用命令。

资料合集:https://pan.quark.cn/s/6fe3007c3e95https://pan.quark.cn/s/561de99256a5https://pan.quark.cn/s/985f55b13d94https://pan.quark.cn/s/d0fb20abd19a

一、基本语法

nl[选项][文件1][文件2]...

无文件参数时,默认读取标准输入(可配合管道|使用)。

二、核心功能与默认行为

  1. 默认只为非空行添加行号,空行不编号(区别于cat -n,后者对所有行包括空行编号);
  2. 行号默认居右,左侧补空格,与文件内容之间有制表符分隔;
  3. 支持多文件拼接打印,行号连续递增。
简单示例
# 打印 test.txt 内容并为非空行加行号nltest.txt

test.txt内容为:

hello linux nl command test line

输出结果:

1 hello linux 2 nl command 3 test line

三、常用选项(重点)

nl的优势在于通过选项自定义行号规则,以下是高频实用选项,可组合使用:

选项作用示例
-b a所有行编号(包括空行),等效cat -nnl -b a test.txt
-b t仅为非空行编号(默认行为),可省略nl -b t test.txt
-n ln行号左对齐,无补空格nl -n ln test.txt
-n rn行号右对齐(默认),左侧补空格nl -n rn test.txt
-n rz行号右对齐,左侧补0填充(固定位数)nl -n rz test.txt
-w N指定行号的宽度(默认6位),N为数字nl -w 3 test.txt(行号占3位)
-s 符号指定行号与内容之间的分隔符(默认制表符\t`nl -s "
-v N指定行号的起始值(默认从1开始)nl -v 10 test.txt(从10开始编号)
-i N指定行号的递增步长(默认1)nl -i 2 test.txt(行号+2递增)

四、经典组合示例

结合选项实现精细化行号打印,覆盖日常大部分使用场景:

1. 所有行编号+行号补0+宽度3位
nl-b a -n rz -w3test.txt

输出(空行也编号,行号3位补0):

001 hello linux 002 nl command 003 004 test line
2. 行号左对齐+分隔符为|+从5开始编号
nl-nln-s"|"-v5test.txt

输出:

5|hello linux 6|nl command 7|test line
3. 配合管道使用(过滤后加行号)
# 查看/etc/passwd中含root的行,并用nl加行号greproot /etc/passwd|nl-b a -n rz -w2
4. 多文件连续编号打印
# 为file1.txt和file2.txt连续加行号,所有行编号nl-b a file1.txt file2.txt

五、与cat -n/cat -b的区别

nl是专门的行号打印工具,cat的行号功能是附属特性,三者核心差异如下,按需选择:

命令编号规则行号对齐自定义性适用场景
nl(默认)仅非空行右对齐(6位)高(宽度、分隔符、步长等)需精细化配置行号
cat -n所有行(含空行)右对齐(默认)低(无自定义选项)快速所有行加行号
cat -b仅非空行右对齐(默认)低(无自定义选项)快速非空行加行号

六、注意事项

  1. 若文件中有换行符异常(如Windows的\r\n),nl仍正常编号,可先用dos2unix转换;
  2. 行号宽度-w N若小于行号实际位数,会自动按实际位数显示,不会截断;
  3. 分隔符-s后若跟特殊符号(如\t\n),需用单/双引号包裹(如-s "\t-")。

总结

nl的核心价值是灵活的行号定制,日常使用中:

  • 快速需求用cat -n/cat -b即可;
  • 补0、自定义分隔符/起始号/步长、固定行号宽度时,优先用nl

最常用的高频组合:

  • 所有行编号+补0:nl -b a -n rz -w 3 文件名
  • 管道过滤后精细化加行号:命令 | nl -b a -s " " 文件名
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/20 0:46:05

亲测好用!继续教育TOP10个AI论文平台深度测评

亲测好用!继续教育TOP10个AI论文平台深度测评 2026年继续教育AI论文平台测评维度解析 在当前快速发展的学术环境中,继续教育群体面临着写作效率低、文献检索困难、格式规范不熟悉等多重挑战。为帮助用户更高效地完成论文撰写与修改,本次测评…

作者头像 李华
网站建设 2026/2/22 4:42:59

浏览器就能远程:CrossDesk 开源远程桌面搭建教程

如果你经常需要远程操作服务器或另一台电脑,一定遇到过这些真实问题: 🖥️ 客户端要装一堆,换台电脑就得重来 😵 不同系统用不同远程工具,体验割裂 🧠 临时借电脑,发现没有远程软件 💻 公司电脑、家里电脑、服务器之间来回切 🔒 不太放心把远程控制交给第三方平…

作者头像 李华
网站建设 2026/2/26 6:29:54

前端必备:tiny-svg SVG 优化与代码生成工具搭建教程

如果你做过一段时间前端开发或 UI 设计对接,一定对 SVG 又爱又恨: 🎨 SVG 清晰、可缩放、非常适合图标 😵 但设计工具导出的 SVG 往往又大又乱 🧠 path、g、style 混在一起,根本不想看 💻 直接丢进项目,体积和可维护性都不理想 🔁 每次都要手动清理,非常耗时间…

作者头像 李华
网站建设 2026/2/26 9:57:03

亲测unet image Face Fusion镜像,人脸合成效果惊艳实录

亲测unet image Face Fusion镜像,人脸合成效果惊艳实录 1. 开箱即用:三分钟跑通人脸融合WebUI 第一次打开这个镜像时,我本以为又要经历漫长的环境配置、依赖安装和模型下载——毕竟人脸融合类工具向来以“部署复杂”著称。但科哥构建的这个…

作者头像 李华
网站建设 2026/2/22 3:11:26

Qwen-Image-Layered保姆级部署:整合包下载即用超省心

Qwen-Image-Layered保姆级部署:整合包下载即用超省心 Qwen-Image-Layered 不是传统意义上的图像生成模型,而是一个专为图像可编辑性重构而生的智能分层引擎。它不追求“画得像”,而是解决一个更底层、更实际的问题:如何让一张静态…

作者头像 李华
网站建设 2026/2/21 1:20:39

YOLOv13多尺度检测能力实测,小物体不丢失

YOLOv13多尺度检测能力实测,小物体不丢失 在工业质检产线识别0.5厘米的电路焊点、无人机巡检中捕捉百米外的电力绝缘子缺陷、智能交通系统实时定位密集车流中的远距离行人——这些场景共同指向一个长期困扰目标检测落地的核心难题:小目标极易漏检&#…

作者头像 李华