Linux技巧(四):用head tail sed 查看第N行到最后一行 您所在的位置:网站首页 linux读取文件最后几行文字 Linux技巧(四):用head tail sed 查看第N行到最后一行

Linux技巧(四):用head tail sed 查看第N行到最后一行

2024-07-11 18:35| 来源: 网络整理| 查看: 265

问题描述

查看前N行,用head;

查看后N行,用tail;

查看行区间,指定行数的数据,貌似有点儿不知所措。what?nani?

查看,从第n行,到最后一行,好像很简单,but?我写不出来!!此处省略三个字……

实战案例 1.查看前N行数据

显示前10行数据

#head -n 10 /etc/passwd  方法一 #head -10 /etc/passwd  方法二

#cat /etc/passwd | head -n 10  方法三 #cat /etc/passwd | head -10  方法四

#sed -n '1,10p' /etc/passwd 方法五

特别说明:以上写法,表面不同,实质换汤不换药。下面的方法不再照此延伸。

变态组合最终达到效果的方法,不在此列,纯干货!

2.查看后N行数据

查看最后10行数据

#tail -n 10 /etc/passwd

3.查看前/后N行以外的数据(不知道数据总共有多少行) 1.查看除最后10行以外的所有数据

#head -n -10 /etc/passwd  方法一(注意,10前面有个-号)

解析,head -n 10,默认是查前10行;10前面添加“-”是取反的意思,此时的效果就是不取最后10行(也就是取除最后10行以外的所有数据)

2.查看从第10行到最后一行数据(特别注意+)

 #tail -n  +11 /etc/passwd  方法一(注意,10前面有个+号)  

解析,tail -n 10,本是查最后10行,前面带个+,就取反了,查的是除了最后11-1行以外的所有行。 

特别注意:这里的+11,不是剔除前11行,实际情况仅仅剔除前11-1=10行,也就是说(要想剔除前10行,这里要写11)

tail -n +0 num.txt

tail -n +1 num.txt

效果是一样的,因为 0-0=0,1-1 =0;

本案例中,如果数字N,前面如果没有+,结果就天壤之别。 

4.查看n,m行区间的数据

查看第5行到第10行

#sed -n '5,10p'  /etc/passwd  方法一(比较简便)

#head -n 10 /etc/passwd | tail -5  方法二(前head取前10行,然后再取这10行中的后5行)

5.查看指定行,仅此一行的数据

仅查看第5行

#sed -n '5,5p'  /etc/passwd  方法一

#head -n 5 num.txt | tail -n 1 方法二(先取前五行,然后再从尾部拿一行出来)

尾言 

解决方法有多种,先汇集常用的,后续有将逐步更新,希望对你有所帮助!

如果你觉得还不错,赶快点赞收藏吧!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有