Linux如何快速显示文本行号?

基础命令:cat + -n / -b

作用:快速显示文件内容并添加行号
语法:

cat -n 文件名    # 显示所有行号(包括空行)
cat -b 文件名    # 仅显示非空行的行号(空行跳过)

示例:

cat -n log.txt

输出效果:

     1  第一行内容
     2  第二行内容
     3
     4  第四行内容

专业行号工具:nl

作用:专为行号设计,支持格式定制
语法:

nl 文件名                 # 显示行号(默认跳过空行)
nl -ba 文件名            # 显示所有行号(包括空行)
nl -w 2 -s ') ' 文件名   # 定制行号格式(宽度2字符,后缀") ")

示例:

nl -ba data.txt

输出效果:

     1  第一行
     2  
     3  第三行

过滤时显示行号:grep + -n

作用:搜索匹配内容时同步显示行号
语法:

grep -n "关键词" 文件名

示例:

grep -n "error" server.log

输出效果:

15:error: 文件未找到
28:error: 权限拒绝

高级文本处理:awk

作用:灵活控制行号格式与条件
语法:

awk '{print NR, $0}' 文件名        # 显示行号+内容
awk 'NF {print NR, $0}' 文件名    # 跳过空行(NF非零)

示例:

awk '{printf "[%04d] %s\n", NR, $0}' config.conf

输出效果:

[0001] port=8080
[0002] 
[0003] host=localhost

流编辑器:sed

作用:编辑文件时附加行号
语法:

sed '=' 文件名 | sed 'N;s/\n/\t/'   # 显示行号后换行,合并为一行

示例:

sed '=' data.txt | sed 'N;s/\n/ /'

输出效果:



分页查看:less + -N

作用:浏览大文件时实时显示行号
语法:

less -N 文件名

操作:

  • 按 G 跳转至文件末尾
  • 按 1G 返回首行
  • 按 搜索内容

场景选择建议

需求 推荐命令
快速查看完整文件 cat -n
排除空行 cat -b 或 nl
搜索关键词并定位 grep -n
定制行号格式 awk 或 nl
浏览大文件 less -N
脚本中处理行号 awk

注意事项

  1. 特殊字符处理:
    • 若文件包含制表符(Tab),cat -n 可能对齐异常,建议用 expand -t 4 文件名 | cat -n 转换空格。
  2. 大文件优化:
    • 避免用 cat 处理GB级日志,优先使用 less -N 或 grep -n 分段加载。
  3. 行号重置:
    • 合并多个文件时,cat -n file1 file2 会连续计数,若需独立计数,结合循环:
      for f in file*; do echo "$f:"; cat -n "$f"; done

Linux列出行号的核心命令包括 cat -n(基础)、nl(专业)、grep -n(搜索)、awk(灵活定制)和 less -N(大文件),根据场景选择工具可显著提升效率,如调试代码推荐 cat -n,分析日志首选 grep -n,掌握这些方法能高效定位数据,提升命令行操作能力。

引用说明基于Linux核心工具手册(GNU Coreutils 9.4)及开发者社区实践总结,参考命令官方文档确保准确性。

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

赞 (0)
酷番叔酷番叔
上一篇 2025年8月7日 01:51
下一篇 2025年8月7日 02:07

相关推荐

  • Linux如何退出屏保?快捷键与命令操作指南

    Linux系统中的屏保(Screensaver)主要用于在系统闲置时保护屏幕,避免长时间静态显示导致屏幕老化或信息泄露,但在某些场景下,用户可能需要快速退出屏保,比如临时操作电脑或屏保程序出现异常,退出屏保的方法因桌面环境(如GNOME、KDE Plasma、XFCE等)和系统配置不同而有所差异,以下将结合具体……

    2025年9月18日
    26500
  • Linux中删除用户系统文件的设置位置在哪里?如何操作?

    在Linux系统中,删除用户时,不仅需要移除用户账户本身,还需清理其关联的系统文件,避免残留文件占用资源或造成安全隐患,用户相关的系统文件主要分布在配置文件目录、用户主目录、系统服务日志及临时文件区域等,需通过特定命令和手动检查结合处理,以下是详细操作步骤及文件位置说明,用户关联系统文件的核心位置Linux用户……

    2025年9月13日
    21400
  • Mac装Linux,双系统还是虚拟机?

    准备工作硬件兼容性检查Intel 芯片 Mac:支持大多数 Linux 发行版(如 Ubuntu、Fedora),Apple Silicon(M1/M2/M3):需选择支持 ARM 架构的发行版(如 Ubuntu ARM、Asahi Linux),T2 安全芯片机型(2018年后部分 Intel Mac):需关……

    2025年7月5日
    33700
  • 在Linux操作系统中,PDF文件如何添加文字与图形标注?

    在Linux系统中,为PDF文档添加标注是日常办公和学习中的常见需求,无论是高亮重点、添加文字批注,还是绘制图形标记,都有多种工具可以实现,本文将详细介绍几种主流的Linux PDF标注工具及其使用方法,帮助用户根据需求选择合适的方案,轻量级工具:Evince(适合快速标注)Evince是GNOME桌面环境默认……

    2025年9月19日
    21000
  • Linux下Oracle用户登录的具体操作方法是什么?

    在Linux操作系统下登录Oracle数据库用户,需结合Oracle数据库的认证机制与Linux系统环境,常见登录方式包括本地登录、远程登录及通过图形化工具登录,不同场景下操作步骤和注意事项有所差异,以下是详细说明:本地登录:通过Linux系统用户直接访问Oracle本地登录依赖Oracle的操作系统认证机制……

    2025年8月24日
    16100

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信