用sed(s,n和g)提取信息

时间:2015-08-10 12:31:36

标签: sed

我知道s意味着分开,但我无法在这里弄清楚:

sed "s/<\/tr/\n<\//g;s/<\/font>/<\/font>\n/g"
你可以解释这是什么意思吗?

1 个答案:

答案 0 :(得分:3)

s并不意味着分开,相反,它意味着替代。

\n此处表示换行

gs命令的标志,它将代替所有匹配的事件

sed "s/<\/tr/\n<\//g;      :replace all </tr by (linebreak)</
s/<\/font>/<\/font>\n/g"   :replace all </font> by </font>(linebreak)

相同
sed 's@</tr@\n</@g; s@</font>@&\n@g'

如果您想在</tr>之前添加换行符,则sed行不会这样做,您可以这样做:

sed 's@</tr>@\n&@g; s@</font>@&\n@g'

此处&表示引用匹配的部分。