awk转换为“;{(linefeed){;

awk转换为“;{(linefeed){;,awk,Awk,我想使用awk将“{(linefeed)”转换为“{” 我试过了,但没有成功 awk '{gsub("{\n", "{")} input >output; 任何合理的描述性解决方案…?您的问题是,与perl不同,记录分隔符不出现在记录中 如果行上的最后一个字符是大括号,则不使用换行符打印,否则使用换行符打印 awk '/{$/ {printf "%s", $0; next} 1' file 或者 使用GNU awk for multi char RS可让您一次读取整个文件: awk -

我想使用awk将“{(linefeed)”转换为“{”

我试过了,但没有成功

awk '{gsub("{\n", "{")} input >output;

任何合理的描述性解决方案…?

您的问题是,与perl不同,记录分隔符不出现在记录中

如果行上的最后一个字符是大括号,则不使用换行符打印,否则使用换行符打印

awk '/{$/ {printf "%s", $0; next} 1' file
或者


使用GNU awk for multi char RS可让您一次读取整个文件:

awk -v RS='^$' -v ORS= '{gsub(/{\n/, "{")} 1' input >output
awk -v RS='^$' -v ORS= '{gsub(/{\n/, "{")} 1' input >output