终于记住回车和换行cr lf的来由和含义了 -参考: http://www.cnblogs.com/me115/archive/2011/04/27/2030762.html
回车: carriage return, 是将光标在同一行中, 回到当前行的 行首. 回来的本意就是 返回.. 所以 是同一行的行首. CR
换行: line feed: feed: 饲养(动物); 喂养(孩子); 供给, 供应的意思. LF
回车 用 \r 符号表示, 十进制值是 13, 十六进制是: 0x 0d.
换行: 用 \n 表示, 十进制值是10, 十六进制是 0x 0a
unix 类系统, 适用 的是 换行, lf, \n, mac系统适用 的是 回车 \r, CR 而windows 系统使用的是 回车+ 换行: CR/LF
所以, unix/mac系统下的文本文件, 在windows下, 会全部是一行, 而 windows ->unix系的文本文件, 在每一行的末尾, 会多一个控制符号 : ^M就是 \r的符号.
历史由来:
- 电传打字机, 每秒打10个字, 1个字占0.1秒, 打完一行字后, 要把打字头 移动到下一行的开头, 需要 花 0.2秒时间. 那么, 如果 这时候 , 有字符连续传送过来时, 就会有2个字符被丢失.
- 所以, 如果在 "要打的文字信息内容 的每一行末尾, 加上两个 字符(0.2秒) 的 "占位符" --什么字符都可以, 只是起到占位的作用, 那么当 打字机的打印头移动下一行的开头位置时, 就刚好过去0.2秒, 那么文字信息的内容, 里面两个占位符的时间也是0.2秒, 就刚好接到 新的字符内容, 而不会丢失.
-为了将这两个占位字符 更形象化, 就跟 打字头 的动作 相一致, 打字机的打字头 移动一行的头部, 给一个符号 叫 carriage return 即CR即 回车( 这个车, 指的是 打字机头)
而打字机的纸张向上/下 送给新的一行, 叫做 line feed,即LF/
这个就是 CR/LF的由来. 后来将这个 设计 移动/移植到 计算机中来, 让 每个文本文件 的 每一行, 也用 这种分割换行符号. 当时由于存储器比较昂贵, 对于计算机中的文本文件, 如果在每一行的末尾 加上这些 CR/LF符号后, 比如会增加文件的大小, 增加文件的字节数/ 存储大小. 所以, 在不同的系统中, 对这个 CR LF就发生了分歧,
在 类Unix系统中,使用 \n LF 来分割,
在Mac中使用 \r来分割,
而在 Win系统中, 则适用 CR lf : \r\n来表示.
注意 , 这个时候, 的 CR LF 已经就没有 电传打字机的 0.2 秒占位符的 意思了. 而是, 只是说 作为 文本文件中, 每一行的 分割符号了. 更有甚者, 就是 在 程序设计, 编程语言中, 将这些 \n \r作为语句的结束符号, 作为 编程语言的 编译器/解释器 作为 语法 分析的 主要 依据了!
而 linux中的 col 命令: 就是 : CR or LF 的意思??? 就是用来过滤 控制字符的 意思, 主要 用在 如 man command等命令 的 输出 中 用 管道 来 过滤 这些 控制 字符 然后输出 到 普通文件中 比如: man ls | col > ls.help
cols------------???????????/
终于记住回车和换行cr lf的来由和含义了 -参考: http://www.cnblogs.com/me115/archive/2011/04/27/2030762.html的更多相关文章
- 替换换行符:回车换行CR/LF
windows采用回车+换行CR/LF表示下一行,UNIX/Linux使用换行符LF表示下一行,MAC OS系统使用用回车符CR表示下一行. CR使用符号'\r'表示, ASCII码是13: LF使用 ...
- CR, LF, CR/LF 回车 换行
[时间:2016-07] [状态:Open] 本文主要介绍"回车"(Carriage Return)和"换行"(Line Feed)这两个概念的来历和区别. C ...
- 回车(CR)换行(LF)的来历及区别
转自https://blog.csdn.net/lw370481/article/details/8229344 一.回车”(Carriage Return)和“换行”(Line Feed)起源 回车 ...
- 细说"回车"和"换行"的故事
引言 最近在php还有c#以及memcache的shell当中经常看到\r\n的写法,刚开始还没注意, 不过后面感觉这样写有些不对头,\r表示回车 \n表示换行,那这样不是换行了两次吗? 为了解决疑 ...
- [转]CR, LF, CR/LF区别与关系
http://weizhifeng.net/talking-about-cr-lf.html 前言 在文本处理中,CR(Carriage Return),LF(Line Feed),CR/LF是不同操 ...
- CR, LF, CR/LF区别与关系
前言 在文本处理中,CR(Carriage Return),LF(Line Feed),CR/LF是不同操作系统上使用的换行符,具体如下: Dos和Windows采用回车+换行CR/LF表示下一行 而 ...
- CR LF CR/LF
CR:Carriage Return,对应ASCII中转义字符 '\r' (0x0D),表示回车LF:Line Feed,对应ASCII中转义字符 '\n' (0x0A),表示换行CRLF:Carri ...
- LF: 换行,U+000A VT: 垂直定位,U+000B FF: 换页符,U+000C CR: 回车符,U+000D CR+LF:CR(U+000D)后跟LF(U+000A) NEL: 下一行,U+0085 LS: 分行,U+2028 PS: 分段,U+2029
https://zh.wikipedia.org/wiki/換行 换行(英语:newline.line ending.end-of-line (EOL).line Feed (LF).line bre ...
- 回车与换行的区别:CRLF、CR、LF
引言 以下是 MySQL 8 导出数据的窗口,导出数据时需要选择记录分隔符,这就需要你明白 CRLF.CR 和 LF 分别代表什么,有何区别,否则可能导出数据会出现莫名其米的问题. 名词解释 CR:C ...
随机推荐
- windows环境下搭建RocketMQ
https://blog.csdn.net/hsl_1990_08_15/article/details/80077552 安装完rocketmq后,报磁盘空间不足,只需要修改启动脚本runbroke ...
- 03-树3 Tree Traversals Again(25 分)
题目 链接 分析 push是二叉树前序遍历的结果,pop是二叉树中序遍历的结果,所以这个题就是已知前序遍历和中序遍历,求后序遍历. AC代码 #include "bits/stdc++.h& ...
- python中的lxml模块
Python中自带了XML的模块,但是性能不太好,相比之下,LXML增加了很多实用的功能. lxml中主要有两部分, 1) etree,主要可以用来解析XML字符串, 内部有两个对象,etree._E ...
- gedit emacs
emacs常用操作: 1)C-g:退出当前命令 2)C-x C-f:搜索文件打开 3)C-s:向前搜索 C-r:向后搜索 4)C-x 2:水平分割窗口 C-x 3:竖直分割窗口 5)C-x o:切换窗 ...
- [10]Windows内核情景分析---中断处理
中断处理 每个cpu有一张中断表,简称IDT. IDT的整体布局:[异常->空白->5系->硬](推荐采用7字口诀的方式重点记忆) 异常:前20个表项存放着各个异常的描述符(IDT表 ...
- Day6 模块及Python常用模块
模块概述 定义:模块,用一砣代码实现了某类功能的代码集合. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,提供了代码的重用性.在Python中,一个.py文件就称之为一个模块(Mod ...
- 2GT PULLEYS 同步齒輪 設計規格
2GT PULLEYS 同步齒輪 設計規格 [資料來源:http://www.jigang.com.tw/zh/product_item/64] 我的20齒 2GT模型 張貼者: 陳亮宇於 上午11: ...
- 10 enumerate()在字典,列表中的用法详解
1.字典 li = {"alex"," aric","Alex","Tony","rain"}for ...
- 数据模型Model(I)
枚举.结构体和协议组成Model //定义一个协议 protocol BaseItemProtocal { var title: String { get set } //属性是可读可写的 var t ...
- OpenVPN 服务端(pritunl)的一些运维经验
1.当服务端部署在docker中,重启机器之后,docker服务会启动,pritunl的docker容器也会跟着自动启动.但此时,一些系统服务还未完全启动成功,导致会有一些pritunl server ...