如何在MacOS上使用sed添加新行?

时间:2013-05-15 22:40:34

标签: sed

我想在</a> and <a><a>

之间添加一个新行
</a><a><a>

</a>
<a><a>

我做了这个

sed 's#</a><a><a>#</a>\n<a><a>#g' filename但它不起作用。

3 个答案:

答案 0 :(得分:28)

由mac提供两种解释:

  1. echo foo | sed 's/f/f\'$'\n/'
  2. echo foo | gsed 's/f/f\n/g'

答案 1 :(得分:15)

某些sed,特别是Mac / BSD,不会将\n解释为换行符,您需要使用实际的换行符,前面加一个反斜杠:

$ echo foo | sed 's/f/f\n/'
fnoo
$ echo foo | sed 's/f/f\
> /'
f
oo
$ 

答案 2 :(得分:0)

...或者您只需踩一下它!在Mac / OSX上为我工作过:

  sed "2 i \\\n${TEXT}\n\n" -i ${FILE_PATH_NAME}
  sed "2 i \\\nSomeText\n\n" -i textfile.txt