ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Linux 命令:head

Linux 命令:head

Linux head 命令详细教程

  • head 是 Linux 系统中用于查看文件前几行内容的基础命令。它无需加载整个文件,就能快速提取文件开头的部分内容,特别适合预览大文件或快速查看日志的最新记录。
  • 资料已经分类整理好:https://pan.quark.cn/s/26d73f7dd8a7
一、基本语法
head [选项] [文件...]
  • 核心功能:
    • 默认显示文件的前 10 行内容。
    • 可通过选项自定义显示行数或字节数。
    • 支持同时处理多个文件(会显示每个文件的标题行)。
二、常用选项
选项功能描述
-n 行数指定显示的行数(如 -n 5 显示前 5 行)
-c 字节数指定显示的字节数(如 -c 100 显示前 100 字节)
-q不显示文件名标题行(静默模式,适合脚本处理)
-v强制显示文件名标题行(默认多个文件时才显示)
--help显示帮助信息
--version显示版本信息
三、实际操作示例
1. 显示文件前 10 行(默认行为)
head large_file.txt  # 显示 large_file.txt 的前 10 行
2. 自定义显示行数(-n 选项)
head -n 3 filename.txt  # 显示前 3 行
head -5 filename.txt    # 简写形式,效果同上
3. 显示文件前 N 字节(-c 选项)
head -c 200 log.txt  # 显示 log.txt 的前 200 字节
4. 同时处理多个文件
head file1.txt file2.txt

输出示例:

==> file1.txt <==
line 1 of file1
line 2 of file1==> file2.txt <==
line 1 of file2
line 2 of file2
5. 静默模式(不显示文件名标题行)
head -q file1.txt file2.txt  # 只显示文件内容,不显示 ==> 标题行
6. 结合管道使用
cat long_file.txt | head -n 5  # 等价于 head -n 5 long_file.txt
7. 负数参数(显示除最后 N 行外的所有内容)
head -n -2 filename.txt  # 显示除最后 2 行外的所有内容
四、特殊场景与注意事项
1. 文件行数不足时

若文件行数少于指定的行数,head 会显示全部内容(不报错):

# 假设 test.txt 只有 3 行
head -n 5 test.txt  # 实际只显示 3 行
2. 处理二进制文件

head 可用于查看二进制文件的前部分内容,但可能显示乱码:

head -c 50 binary_file  # 显示二进制文件的前 50 字节
3. 性能优势

对于超大文件(如 GB 级日志),head 比 cat 更高效,因为它无需加载整个文件。

五、与其他命令对比
命令功能适用场景
head显示文件前 N 行快速预览文件开头
tail显示文件后 N 行查看日志最新记录
less分页查看文件,支持交互深入浏览大文件
cat显示文件全部内容小文件一次性查看
六、扩展应用场景
1. 查看日志文件的最新记录(结合 tail)
tail -n 100 app.log | head -n 10  # 查看日志最后 100 行中的前 10 行
2. 创建文件片段(通过重定向)
head -n 20 source.txt > snippet.txt  # 提取源文件的前 20 行到新文件
3. 快速验证文件格式
head -n 1 csv_file.csv  # 查看 CSV 文件的表头行
七、总结

head 是 Linux 中最简单但实用的文本处理工具之一,核心用法可总结为:

  • 默认显示前 10 行:head filename.txt
  • 自定义行数:head -n 5 filename.txt
  • 结合管道和重定向:灵活处理各种场景。

在处理大文件或需要快速预览文件内容时,head 能显著提升效率。建议与 tail、grep 等命令配合使用,构建更复杂的文本处理流程。

返回列表