Grep Syntax Dilemna

时间:2015-08-18 11:03:58

标签: regex linux unix sed grep

我正在尝试使用grep复制文本文件中与某个模式匹配的行但是,我遇到了一些问题......我想抓住“标题中的值” =“容器。

代码:

get_tmax=`grep '[0-9][0-9]°C' K0G7_ec_tmp`
echo "${get_tmax}" > K0G7_ec_tmp2

文本文件内容:

<p class="one" title="19&deg;C">19</p>
<p class="two" title="26&deg;C">26</p>

2 个答案:

答案 0 :(得分:3)

您可以使用grep -P匹配重置\K

grep -ioP 'title="\K[^"]+' K0G7_ec_tmp
19&deg;C
26&deg;C

但是在使用shell实用程序grep / awk / sed等解析HTML文件时要小心。更好地使用专用的HTML解析器来完成这项工作。

答案 1 :(得分:0)

grepg/re/p的简写,这不是您正在尝试执行的操作,因此我要查看sed

$ sed 's/.*title="\([^"]*\).*/\1/' file
19&deg;C
26&deg;C

这适用于任何操作系统上的任何sed版本。