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 -bnl
搜索关键词并定位 grep -n
定制行号格式 awknl
浏览大文件 less -N
脚本中处理行号 awk

注意事项

  1. 特殊字符处理
    • 若文件包含制表符(Tab),cat -n 可能对齐异常,建议用 expand -t 4 文件名 | cat -n 转换空格。
  2. 大文件优化
    • 避免用 cat 处理GB级日志,优先使用 less -Ngrep -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下vmstat命令如何正确终止?

    Linux系统中的vmstat命令是一个常用的虚拟内存统计工具,能够实时显示系统的进程、内存、分页、块IO、陷阱和CPU等信息,广泛应用于系统性能监控和故障排查,当vmstat命令长时间运行或不再需要时,若未正确终止,可能会占用终端资源或影响系统性能,本文将详细介绍Linux中终止vmstat命令的多种方法,涵……

    2025年9月16日
    4800
  • Linux系统日志清理实用指南,如何高效清理及注意事项详解?

    在Linux系统中,日志文件是系统运行状态的重要记录,包含系统启动、应用程序运行、用户行为、错误信息等关键数据,日志文件会随着时间推移不断增长,占用大量磁盘空间,甚至可能导致系统性能下降或服务异常,定期清理Linux日志是系统维护的重要任务,本文将详细介绍Linux日志清理的方法、工具及注意事项,帮助用户高效管……

    2025年9月16日
    4200
  • LVM快照能保护数据吗?

    在Linux系统中,创建快照(Snapshot)是保护数据安全和实现高效备份的核心技术,它能在瞬间捕获文件系统或磁盘的特定状态,后续可随时回滚到该状态,尤其适用于系统更新测试、数据恢复或虚拟机管理,以下是Linux创建快照的详细方法,涵盖主流技术方案:LVM是Linux内置的磁盘管理工具,支持为逻辑卷创建轻量级……

    2025年6月27日
    7500
  • kali linux如何破解wifi密码?

    在使用Kali Linux进行WiFi密码破解时,必须明确强调:此类操作仅限于对自有网络或获得明确授权的网络进行安全测试,未经授权的破解行为属于违法行为,需承担相应法律责任,以下内容仅作为网络安全学习的技术参考,请严格遵守法律法规和道德规范,环境准备在进行WiFi破解前,需确保硬件和软件环境满足要求,硬件方面……

    2025年9月10日
    4200
  • Linux下cout如何控制终端颜色?实现方法与代码示例解析

    在Linux环境下,C++的cout本身并不直接提供颜色控制功能,但可以通过输出ANSI转义序列来实现终端颜色和样式的调整,ANSI转义序列是一组以ESC(ASCII码27,八进制\033或十六进制\x1b)开头的控制字符,终端会解析这些序列并改变后续文本的显示效果,如颜色、背景、加粗、闪烁等,这种方法在Lin……

    2025年8月23日
    5600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信