linux shell脚本sed取一对标签中的数据

目录

问题背景

思路分析

解决方法


问题背景

在linux系统中,文本文件里面定位某一个数据时一般会用一对标签把数据夹在中间,如果这时候想用shell脚本提取,该如何解决?

思路分析

使用sed对特定标签之间某行数据进行提取

文本示例:

tag:

100

tag:

这是一对夹在tag:标签之间的数据,我们需要把100这个数据提取出来

如果这个文本文件名字叫test.inp,那么提取脚本示例如下

解决方法

cat test.inp | sed -n '/tag:/,/tag:/p'

但是发现这种情况会把标签也提取出来,如果我们只想要数据的话,我们就把提出来的内容首尾两行删掉就行,方法如下:

cat test.inp | sed -n '/tag:/,/tag:/p' | awk 'NR>2{print line}{line=$0}' >result.out

该方法适用于提取一对标签之间夹着的某行数据

猜你喜欢

转载自blog.csdn.net/qq_35902025/article/details/129945218