linux 下如何显示行号

Linux 下,使用 cat -n 或 nl 命令可显示文件

Linux 下显示行号有多种方法,以下是一些常见的方式及其详细用法:

linux 下如何显示行号

使用 cat 命令结合 -n 选项

cat 命令用于查看文件内容,加上 -n 选项可以显示行号。

语法:

cat -n [文件名]

示例:
假设有一个名为 example.txt 的文件,内容如下:

Hello
World
Linux

执行命令 cat -n example.txt,输出结果为:

     1  Hello
     2  World
     3  Linux

这里每一行的前面都显示了对应的行号,行号与内容之间用空格隔开,这种方式简单直接,适用于快速查看文件内容并获取行号信息。

运用 nl 命令

nl 命令专门用于给文件内容添加行号,并且它提供了更多的选项来控制行号的显示格式。

基本语法:

nl [选项] [文件名]

常用选项:

  • -b:指定行号开始的数字,-b a 从字母 a 开始编号。
  • -w:指定行号所占的宽度,默认是 6 个字符宽度。
  • -s:指定行号与内容之间的分隔符,默认是空格。

示例:
对于上述相同的 example.txt 文件,执行命令 nl example.txt,输出结果可能如下:

linux 下如何显示行号

     1  Hello
     2  World
     3  Linux

如果想要自定义行号的起始值和分隔符,比如从 10 开始编号,且用冒号分隔行号和内容,可以执行 nl -v 10 -s : example.txt,输出结果为:

10:Hello
11:World
12:Linux

借助 awk 命令

awk 是一个强大的文本处理工具,也可以用来显示行号。

语法:

awk '{print NR, $0}' [文件名]

NR 是 awk 内置的变量,表示当前行的行号,$0 表示当前行的内容。

示例:
再次以 example.txt 为例,执行命令 awk '{print NR, $0}' example.txt,输出结果为:

1 Hello
2 World
3 Linux

这种方式更加灵活,因为 awk 可以对文件内容进行复杂的处理和分析,在显示行号的同时还可以进行其他操作,比如筛选特定行、格式化输出等。

利用 sed 命令

sed 是一个流编辑器,同样能够实现显示行号的功能。

语法:

sed '=' [文件名]

示例:
执行命令 sed '=' example.txt,输出结果为:

linux 下如何显示行号

1
Hello
2
World
3
Linux

这里 sed '=' 会在每一行的前面输出该行的行号,然后换行显示原内容,如果希望行号和内容在同一行显示,可以使用更复杂的 sed 脚本,如 sed 'N;s/n/ /;=' example.txt,但这种用法相对复杂一些。

通过 vim 或 vi 编辑器(打开文件后在编辑器内操作)

如果你使用 vim 或 vi 打开文件,也可以通过一些操作来显示行号。

在 vim 中,按下 :set number 命令,即可在编辑器中显示行号,再次输入 :set nonumber 可以取消行号显示,这种方式适合在编辑文件时临时查看行号,方便定位和修改内容。

命令 功能描述 适用场景
cat -n 简单显示文件内容及行号 快速查看文件并获取行号信息
nl 提供多种选项定制行号显示 需要自定义行号格式、起始值等
awk '{print NR, $0}' 灵活处理文件内容并显示行号 在处理文件同时需显示行号,可结合其他 awk 操作
sed '=' 输出文件内容及对应行号 单纯显示行号,对输出格式要求不严格时
vim 中 :set number 在编辑器内显示行号 编辑文件时临时查看行号以便定位修改

FAQs:

问题 1:cat -n 和 nl 命令显示行号有什么区别?
答:cat -n 命令显示行号较为简单直接,行号与内容之间默认用空格隔开,功能相对单一,而 nl 命令提供了更多的选项来定制行号的显示,比如可以指定行号的起始值、行号所占宽度以及行号与内容之间的分隔符等,灵活性更高。

问题 2:如何在使用 awk 显示行号的同时筛选出包含特定字符串的行?
答:可以在 awk 脚本中添加条件判断,要筛选出包含字符串 “World” 的行并显示行号,可以使用命令 awk '/World/{print NR, $0}' example.txt,这里 /World/ 是一个匹配模式,只有当行内容包含 “World” 时,

各位小伙伴们,我刚刚为大家分享了有关linux 下如何显示行号的知识,希望对你们有所帮助。如果您还有其他相关问题需要解决,欢迎随时提出哦!

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/12906.html

赞 (0)
酷番叔酷番叔
上一篇 2025年8月19日 06:20
下一篇 2025年8月19日 06:26

相关推荐

  • linux下如何用python文件

    Linux下,使用Python文件可通过终端运行,如python3 script.py(script.

    2025年8月15日
    23900
  • Linux下如何退出mail命令?

    退出邮件阅读模式当使用mail命令查看收件箱时(例如输入mail后显示邮件列表),退出方式如下:直接退出不保存操作输入 q(quit)后按回车,退出并将已读邮件转移到 ~/mbox 文件(系统默认存档), ? q退出且保留邮件在收件箱输入 x(exit)后按回车,退出不保存任何操作(新邮件仍保留在收件箱 /va……

    2025年7月31日
    23800
  • Linux系统制作img镜像文件的具体详细操作步骤和方法是什么?

    Linux制作img镜像是一项常见操作,广泛应用于系统备份、嵌入式设备开发、虚拟磁盘创建等场景,img镜像本质上是块设备或分位的完整副本,包含分区表、文件系统和数据,可用于恢复系统或部署到其他设备,以下是几种主流的制作方法,涵盖不同需求场景,使用dd命令制作img镜像dd命令是Linux内置的强大工具,通过直接……

    2025年8月24日
    31200
  • 如何正确为dev/sdb分区避免误操作?

    挂载前的准备工作连接硬盘并识别将硬盘接入SATA/USB接口,开机后执行: sudo fdisk -l # 或使用 lsblk查看新硬盘标识(如 /dev/sdb、/dev/nvme0n1p1),备份数据(重要!)若硬盘存有数据,务必先备份,挂载操作可能触发格式化,导致数据丢失,检查文件系统确认硬盘是否已格式化……

    2025年7月21日
    25800
  • Linux环境下如何正确删除U盘?完整操作步骤与注意事项指南

    在Linux操作系统中,安全删除U盘(即安全弹出或卸载)是避免数据损坏的关键步骤,直接拔出U盘可能导致缓存数据未写入磁盘、文件系统错误,甚至U盘硬件损坏,本文将详细介绍Linux环境下正确删除U盘的多种方法、注意事项及常见问题解决,帮助用户在不同场景下安全操作,为何需要“安全删除”而非直接拔出?Linux(及其……

    2025年8月22日
    34900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信