head和tail命令使用

引子

突然有个问题需要解决,去掉首行。咋整?

head展示最前面的行

tail展示最后的行

awk 'NR>1'可以

sed '1d'也可以

但是,就想用head或者tail,咋整?对这俩命令不太熟悉。希望看到最后,你将会彻底掌握head和tail:

head 命令详解

head 命令用于显示文件的开头部分。

基本语法

复制代码
head [选项] [文件]

常用选项

  • -n 或 -:显示文件的前 N 行

  • -c:显示文件的前 N 个字节

  • -q:不显示文件名(静默模式)

  • -v:总是显示文件名

tail 命令详解

tail 命令用于显示文件的末尾部分。

基本语法

复制代码
tail [选项] [文件]

常用选项

  • -n 或 -:显示文件的最后 N 行

  • -c:显示文件的最后 N 个字节

  • -f 或 --follow:实时追踪文件变化(常用于日志监控)

  • -F :同 -f,但在文件被轮转或删除后重新尝试打开

  • -q:不显示文件名

  • -v:总是显示文件名

这些参数很常规啊~~都是我们之前常用的~~学了个寂寞!!!

高级用法:显示文件的特定范围

从第N行到文件末尾

bash 复制代码
# 从第11行显示到文件末尾(跳过前10行)
tail -n +11 filename.txt

# 从第6行显示到文件末尾(跳过前5行)
tail -n +6 filename.txt

显示第N行到第M行

bash 复制代码
# 显示第5行到第10行
head -n 10 filename.txt | tail -n +5

# 或者使用sed
sed -n '5,10p' filename.txt

果然,任何功法都得学到高级,才能解决更高级的问题。

答案就藏在了tail的-n选项指定的参数:+N就是从第N行展示到最后一行。

既然tail -n +N 代表从+N行到最后一行,tail -n N代表最后N行。那么,head -n N代表top N,head -n -N呢?

答案: 从倒数第N行到第一行。

head命令实验:

~]# head -n 3 test-line.txt

line1

line2

line3

~]# head -n +3 test-line.txt

line1

line2

line3

~]# head -n -3 test-line.txt

line1

line2

line3

line4

line5

line6

line7

tail命令实验:

~]# tail -n 3 test-line.txt

line8

line9

line10

~]# tail -n -3 test-line.txt

line8

line9

line10

~]# tail -n +3 test-line.txt

line3

line4

line5

line6

line7

line8

line9

line10

性能比较

对于大文件:

  • tail -n +2:性能最好,直接定位到第2行开始读取

  • sed '1d':性能较好,流式处理

  • awk 'NR>1':性能较好,流式处理

相关推荐
ai小陈12 小时前
GPU服务器租用存储验收:检查点写入与磁盘吞吐实战
运维·服务器·人工智能·ai·ssh·gpu算力
Ivanqhz14 小时前
激活函数在 Transformer 中的作用及各种变体简述
java·linux·数据库·人工智能·深度学习
FPGA小徐14 小时前
PA1 基础设施(2)深度解析:NEMU 中 ITRACE、MTRACE、FTRACE、IRINGBUF、ETRACE、DIFFTEST 全解析
java·服务器·网络
有毒的教程15 小时前
VMware仅主机模式:物理机 ↔ 虚拟机 文件共享
运维
知行EDI15 小时前
知行之桥 MaBang 端口使用指南——Create Order 订单创建篇
java·服务器·数据库
成旭先生15 小时前
【2026】企业信息模糊查询 API 实战:名称、注册号、统一社会信用代码、企业类型与法人一次查全
服务器·数据库·数据服务
殷色玫瑰16 小时前
C/C++ 内存管理详解:从内存分布到 new/delete 底层原理
java·linux·c语言·c++
山岚的运维笔记17 小时前
ComfyUI NVIDIA安装教程:官方便携版下载+run_nvidia_gpu.bat启动,8G显存Windows实操
运维·服务器·windows·笔记·prompt·aigc·comfyui
海宇大数据17 小时前
零信任架构实战:基于海宇活体识别V步骤1构建自动化远程公证会话初始化网关
运维·人工智能·架构·自动化
꯭自꯭闭꯭17 小时前
DM7主备升级方案
linux·服务器·数据库