小谈不同系统中的换行符 - CRLF/CR/LF

本文探讨了在不同操作系统中(如Windows、Linux和早期MacOS)文本文件的换行符差异,包括CR(回车)、LF(换行)和CRLF(回车换行)的使用,并介绍了如何使用工具dos2unix处理这些差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在不同系统中拷贝文本文件时, 大家应该就会发现, 文件拷贝后有时会遇到些问题.

比如下图是我在 Windows 下写的一个文本, 复制到 Linux 系统下时在每行的末尾会多出 ^M 字符.

 这其实就是不同系统间换行符的差异.

Windows 下使用的是 CRLF 两个字符, 而 Linux 下则是单独使用 LF 字符.

当然了, 早期的 MacOS (应该是MacOS 9及之前版本) 使用的是 CR 字符来换行.

Linux 下用来处理这种问题, 除了对文本进行批量字符替换外, 也可以借助于工具 dos2unix 来解决.

 

CR = Carriage Return, 意即 回车

LF = Line Feed, 意即 换行

有看过传统打字机运作的朋友应该更能理解, 回车是打字机的字车(印字头)回到最左边位置的动作, 换行则是辊子带动被打印纸张去到下一行的动作.

 

在 ASCII 码中,

CR 标识符是 \r , code 是 0x0d(13)

LF 标识符是 \n , code 是 0x0a(10)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值