Linux如何显示文件行号?

cat 命令 + -n 参数

适用场景:快速查看小型文件(避免大文件卡顿)。
命令示例

cat -n filename.txt

输出效果

     1  Line 1 content
     2  Line 2 content
     3  Line 3 content

注意

  • -n 为所有行编号(包括空行),-b 可跳过空行编号(cat -b filename.txt)。

nl 命令(专为行号设计)

适用场景:需自定义行号格式或过滤部分内容。
基础用法

nl filename.txt

高级示例(只对包含特定文本的行编号):

nl -b p'error' logfile.txt  # 仅显示含 "error" 的行并编号

参数说明

  • -b a:所有行编号(默认)
  • -b t:跳过空行
  • -w 4:行号宽度设为4字符(nl -w 4 file.txt

grep 命令 + -n 参数

适用场景:搜索关键词并显示所在行号。
命令示例

grep -n "search_text" filename.txt

输出效果

3:search_text found here
7:another search_text line

提示:结合正则表达式可精准定位(如 grep -nE "pattern" file)。


less 查看器

适用场景:浏览大文件时实时跳转。
操作步骤

  1. 输入命令:
    less -N filename.log
  2. 使用键盘导航:
    • 空格键:向下翻页
    • q:退出
    • /keyword:搜索关键词(结果带行号)

vim / vi 编辑器

适用场景:编辑文件时需行号参考。
启用行号

  1. 打开文件:
    vim filename.py
  2. 命令模式下输入:
    :set number   # 显示行号
    :set nonumber # 关闭行号

    快捷键

  • gg:跳转首行
  • G:跳转末行
  • :123:跳转至第123行

awk 高级处理

适用场景:自定义行号格式或结合脚本处理。
命令示例

awk '{print NR, $0}' filename.txt  # NR表示当前行号

输出效果

1 Line 1
2 Line 2

扩展应用(添加前缀):

awk '{printf "[%d] %s\n", NR, $0}' file.txt

注意事项

  • 大文件警告cat -nnl 处理超大文件可能消耗内存,建议用 less -N 分页查看。
  • 行号偏移:若文件包含多字节字符(如中文),某些工具的行号可能对齐异常,建议使用 vimless
  • 脚本自动化:在脚本中推荐 grep -nawk,便于结果重定向处理。

总结建议

  • 快速查看:用 cat -nnl
  • :用 grep -n
  • 大文件浏览:用 less -N
  • 编辑文件:用 vim + :set number

引用说明基于 Linux 核心工具手册(GNU Coreutils 9.4)及开发者社区最佳实践整理,确保方法在主流发行版(Ubuntu, CentOS, Debian)中有效,具体命令可通过 man [command](如 man grep)查阅官方文档。

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

(0)
酷番叔酷番叔
上一篇 13小时前
下一篇 12小时前

相关推荐

  • Linux如何打开RAR文件?

    方法1:使用unrar命令行工具(推荐)步骤:安装unrar根据发行版选择命令(需管理员权限):# Debian/Ubuntusudo apt update && sudo apt install unrar# CentOS/RHELsudo yum install epel-release……

    2025年7月14日
    1500
  • 如何挂载磁盘分区到文件夹?

    核心概念Linux系统克隆指创建完整的系统副本(包括操作系统、配置、应用及数据),用于备份、迁移或部署相同环境,根据目标需求,主要分三类方法:磁盘/分区级克隆:逐扇区复制(适合整盘备份或硬件更换)文件级克隆:复制文件与目录结构(适合同架构系统迁移)系统打包重建:生成安装包再部署(适合大规模分发)磁盘级克隆(推荐……

    2025年7月6日
    1800
  • 如何在Linux显示文件行号

    使用 cat 命令显示行号cat -n filename.txt效果:在每行前添加行号(包括空格行),示例输出: 1 Linux is powerful 2 This is line two 3 4 Line four after empty line适用场景:快速预览小文件,使用 nl 命令(专业行号工具)n……

    2025年6月21日
    2000
  • 每天喝咖啡真的会骨质疏松吗

    Linux驱动基础概念设备文件机制Linux将驱动抽象为设备文件(位于/dev目录),如:字符设备:/dev/ttyS0(串口)块设备:/dev/sda1(磁盘分区)交互方式| 接口类型 | 操作方式 | 典型场景……

    2025年7月4日
    1400
  • 如何用图形界面轻松打开终端?,新手如何从图形界面打开终端?,图形界面打开终端有多简单?,怎样不用命令打开终端?,图形界面点哪里进终端?

    在Linux系统中,终端(Terminal)是与操作系统交互的核心工具,尤其对于系统管理、开发调试等任务至关重要,本文将以RHEL/CentOS 6(常被简称为Linux 6)为例,详细说明多种进入终端的方法,适用于不同使用场景,适用于已安装图形桌面(如GNOME)的环境:登录系统后,点击左上角 “Applic……

    2025年7月21日
    900

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信