跳到主要内容

The End-of-Line Story

· 阅读需 2 分钟

闲的没有事情做,把以前看到的一篇文章翻译一下

面向文本的 ASCII 标准并未定义一个 行终止符( end-of-line,EOL)。相反的,ASCII 标准定义了两个独立且互不相关的代表打印头移动方式的字符:回车(Carriage Return,CR)和 换行(Line Feed,LF)。IBM 的 EBCDIC 并没有犯这个错误,它定义了一个代表新的一行的字符(New Line,NL)。早期操作系统设计者不得不采纳一些使用 CR 和 LF 代表 end-of-line 的约定:有些人使用 LF,有些人使用 CR,还有一些人使用 LF CR 或者 CR LF。

在 ARPAnet 的早期研究时期(大约在 1970 ~ 1972),操作系统采用的EOL的多样化使得不同系统间的网络通讯变得困难。经过一些讨论之后(被记录在早期的 RFC 中),研究者们选择了一个约定:

在网络中传输的 ASCII 文本必须使用 CR LF 作为 EOL

TODO