Linux

sed(按行操作)文本过滤

2020-02-07  本文已影响0人  云养江停

参考sed用法 https://www.cnblogs.com/ctaixw/p/5860221.html

指定只显示(只打印)文件中的某几行(中间几行)

 sed -n '5,10p' filename 这样你就可以只查看文件的第5行到第10行。

-n :只打印模式匹配的行  p打印匹配行(和-n选项一起合用)

删除行

sed '/^$/d' 来删除文件的空白行了,因为 /^$/ 的意思是匹配首尾且中间内容为空格的信息,即空白行:

sed '1d' 删除第一行

sed '/name/d' 删除匹配为name的行

sed '2 d' 删除第二行


如何从字符串中截取一段内容

例如文本文件

111testAAA

34343testBBBB

8729testCCCC

723435testDDDD

希望得到字符串“test"后面的内容,

AAA

BBBB

CCCC

DDDD

sed 's/.*test//g' yourfile

从第3000行开始,显示1000行。即显示3000~3999行

cat filename | tail -n +3000 | head -n 1000

【二】显示1000行到3000行

cat filename| head -n 3000 | tail -n +1000

*注意两种方法的顺序

分解:

    tail -n 1000:显示最后1000行

    tail -n +1000:从1000行开始显示,显示1000行以后的

    head -n 1000:显示前面1000行

上一篇 下一篇

猜你喜欢

热点阅读