当前位置: 首页 > news >正文

系统换行符的思考

各系统换行符

换行符,也即是回车换行,因为表示为Carriage-ReturnLine-Feed

回车用Return-Carrige表示,简写为CR,字符表示为\r。
换行用Line-Feed表示,简写为LF,字符表示为\n。

由于历史原因,各操作系统使用不同的字符来表示换行符:

标识字符
WindowsCRLF\r\n
Linux/UnixLF\n
MacCR\r

这段历史,可参考回车换行符的来龙去脉。

Windows文件在Linux上显示

在Windows上创建的文件,如果未修改过其换行符,将其在Linux系统打开时,其换行符\r\n中的\n会直接被解释成换行符$(使用vim打开文件,然后使用set list(set nolist)显示(关闭显示)所有字符),而\r会被解释成^M(使用vim -b 目标文件即可显示)。

在这里插入图片描述
在这里插入图片描述

如果想要知道某个文件的使用的换行符格式,可使用vscode打开文件,界面右下角会将其文件编码格式、换行符、tab字符个数等信息。点击相应位置即可修改相关信息。

在这里插入图片描述

UTF-8与UTF-8 With BOM

UTF-8 With BOM是Windows产物,这种编码格式的文件中,开头会有几个特殊字符,当Windows系统检测到这几个字符时,便会将该文件以UTF-8编码处理。

可参考UTF-8和UTF—8Bom的区别(转)。

dos2unix 和 unix2dos

Dos2unix 软件包包括工具 dos2unixunix2dos,用于将纯文本文件在 DOS 或 Mac 格式与 Unix 格式之间相互转换。

DOS/Windows 的文本文件中,断行符是由两个字符共同表示的:回车符(CR)和换行符(LF)。Unix 的文本文件中,换行符则由单个换行符(LF)表示。而 Mac 的文本文件则由单个回车符(CR,用于 Mac OS X 之前的系统)或单个换行符(LF,用于当下的新 Mac OS)表示。

http://www.lryc.cn/news/33977.html

相关文章:

  • Wwise集成到unreal
  • 前端秘籍之=>八股文经卷=>(原生Js篇)【持续更新中...】
  • 【Python安装配置教程】
  • Spring-Retry失败重试
  • 【目标检测 DETR】通俗理解 End-to-End Object Detection with Transformers,值得一品。
  • 项目ER图和资料
  • 剑指 Offer 20. 表示数值的字符串(java+python)
  • 程序员的逆向思维
  • 吐血整理学习方法,2年多功能测试成功进阶自动化测试,月薪23k+......
  • mysql慢查询:pt-query-digest 分析
  • git的使用整合
  • XCPC第九站———背包问题!
  • 【软考 系统架构设计师】论文范文④ 论基于构件的软件开发
  • spring-integration-redis中分布式锁RedisLockRegistry的使用
  • 城市通电(prim算法)
  • 【动态规划】
  • 秒懂算法 | DP概述和常见DP面试题
  • 【C++提高编程】C++全栈体系(二十五)
  • 【云原生】k8s核心技术—集群安全机制 Ingress Helm 持久化存储-20230222
  • 【Linux】实现简易的Shell命令行解释器
  • 再获认可!腾讯安全NDR获Forrester权威推荐
  • 代码审计之旅之百家CMS
  • ONLYOFFICE中利用chatGPT帮助我们策划一场生日派对
  • Java面试题-线程(一)
  • 一篇普通的bug日志——bug的尽头是next吗?
  • Vue 3 第八章:Watch侦听器
  • GlassFish的安装与使用
  • 【java】Java 重写(Override)与重载(Overload)
  • OpenCV-PyQT项目实战(12)项目案例08:多线程视频播放
  • 面向对象设计模式:结构型模式之装饰器模式