固定长度文件问题

固定长度文件问题

固定长度文件中的少数记录被分成两条记录该文件看起来类似于下面的内容。第三条记录被分成两条记录。如何从末尾删除 '\r' 并将第四行向上移动并与第三行合并。

样本文件:

Firstrow\n
Secondrow\n
Third\r\n
Row\n
Fourthrow\n
Fifthrow\n

需要的最终结果:

Firstrow\n
secondrow\n
Thirdrow\n
Fourthrow\n
Fifthrow\n

答案1

尝试

sed '/\r/{N; s/\r\n//}' file

答案2

使用 awk 您可以根据行使用输出记录分隔符

awk '{ORS = sub(/\r$/,"") ? "" : RS};1' file > temp && mv temp file

或者,使用 perl 删除 CRLF 对

$ perl -pi -e 's/\r\n//' file

相关内容