如何替换包含换行符的awk中的字符串?

时间:2015-10-26 16:03:54

标签: awk sed

我想使用awk处理文本文件,将“\ n1-0”替换为“1-0”。

**错误是:

awk '{gsub("\n1-0", " 1-0"); print}' temp.txt >$TARGET

如何做到这一点?会有更好的选择吗?

1 个答案:

答案 0 :(得分:2)

您可以将记录分隔符设置为空:

$ cat file
tbname  id  department
xyz 20  cic
1-0 xyz 21  csp
xyz 22  cpz
abc 25  cis
abc 26  cta
abc 27  tec

$ awk -v RS= '{gsub("\n1-0", " 1-0")}1' file
tbname  id  department
xyz 20  cic 1-0 xyz 21  csp
xyz 22  cpz
abc 25  cis
abc 26  cta
abc 27  tec