确定文本文件中的新行字符?

确定文本文件中的新行字符?

给定一段文本,是否有一种程序可以检测换行符是什么,Windows、Mac 或 Linux 中的程序?

例如,以下文本显示为less

存储器:^M^Mi 是由 CPU 直接访问的存储器^M^M术语“存储器”通常(但不总是)与可寻址半导体存储器相关联,即由硅基晶体管组成的集成电路。^M半导体存储器被组织为 ^ M记忆细胞

我以为^M是Mac下的换行符。但在 emacs 中,我通过 Ctrl-q Ctrl-m 搜索并没有找到任何结果。

谢谢。

答案1

file将报告文本文件的行结尾。file例如,如果您在 ASCII Unix/Linux/OSX 文本文件上运行,它将简单地报告:

$ file test.txt
test.txt: ASCII text

但是,如果文件具有 DOS/Windows 行结尾,它将报告:

test.dos: ASCII text, with CRLF line terminators

在 OS 9 之前,Mac 使用 CR 作为行结尾。当出现这样的文件时,file将报告:

test.mac: ASCII text, with CR line terminators

通过 OSX,Mac 转换为标准 Unix 行结尾。

相关内容