我有一个很大的二进制文件(几乎是二进制文件!),其中有很多 \r\n
在里面[在 Windows 环境中生成,并且无法控制生成应用程序]。我想删除\r从这个大文件 [ =~ 1Gb ] 在另一个旧应用程序中进行进一步处理,该应用程序 \r
大喊大叫
有什么简单的方法可以以unix方式做到这一点吗?
答案1
它要么是二进制的,要么不是。如果您的内容实际上不是二进制而只是复杂的文本,这里有一些解决方案。
首先,许多 Linux 发行版都附带一个名为的实用程序dos2unix
,您可以在文件上运行该实用程序来转换行结束样式:
$ dos2unix original_file converted_file
tr
你也可以这样做:
$ tr -d '\r' < orignal_file > converted_file
或者使用 perl:
$ perl -pne 's/\r$//g' < orignal_file > converted_file