linux mac和windows换行符的区别

el/2024/7/17 21:57:46

Unix系统里,每行结尾只有“<换行>”,即“\n”;

Windows系统里面,每行结尾是“ <回车><换行>”,即“\r\n”;

Mac系统里,每行结尾是“<回车>”。

 

一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;

而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。

 

windows创建的文件是 \n\r结束的, 

而Linux,mac这种unix类系统是\n结束的。

所以unix的文本到windows会出现换行丢失(ultraedit这种软件可以正确识别);

 而反过来就会出现^M的符号了

 

Windows等操作系统用的文本换行符和UNIX/Linux操作系统用的不同,Windows系统下输入的换行符在UNIX/Linux下不会显示为“换行”,而是显示为 ^M 这个符号(这是Linux等系统下规定的特殊标记,占一个字符大小,不是 ^ 和 M 的组合,打印不出来的)。Linux下很多文本编辑器(命令行)会显示这个标记之后,补上一个自己的换行符,以避免内容混乱(只是用于显示,补充的换行符,不会写入文件,有专门的命令将Windows换行符替换为Linux换行符)。 UNIX/Linux系统下的换行符在Windows系统的文本编辑器中会被忽略,整个文本会乱成一团。

 windows换行是\r\n,十六进制数值是:0D0A。

     LINUX换行是\n,十六进制数值是:0A
所以在linux保存的文件在windows上用记事本看的话会出现黑点,我们可以在LINUX下用命令把linux的文件格式转换成win格式的。
unix2dos 是把linux文件格式转换成windows文件格式。(不建议使用,可以使用linux命令行来转换)
dos2unix 是把windows格式转换成linux文件格式。

 

linux下删除windows换行符^M

单个的文件装换

sed -i 's/\r//'  filename

 

批量的文件装换

sed -i 's/\r//'  filename1 filename2 ...

 

 

 

 


http://www.ngui.cc/el/5557058.html

相关文章

centos系统有多个内核,修改默认启动内核

打开系统文件 vim /boot/grub/grub.conf 默认由0开始计数&#xff0c;因此须将default值改为0即可。 重启服务器 reboot ----------------------------- #boot/dev/sda default1 timeout5 splashimage(hd0,0)/grub/splash.xpm.gz hiddenmenu title CentOS (2.6.18-194.17.1.el…

一台linux机器配置多个物理网卡,导致的上不了网的问题

鄙人因为实验的需要配置了多个物理网卡&#xff0c;每个物理网卡用网线都与同一台交换机相连。eth0配置了静态IP&#xff08;static&#xff09;&#xff0c;eth1&#xff0c;eth2&#xff0c;eth3&#xff0c;eth4&#xff08;dhcp&#xff09;都动态分配&#xff0c;配置完成…

CentOS升级内核(elrepo-kernel-lt)--非编译方法

最近在研究ceph的安装&#xff0c;发现块设备的挂载需要内核支持rbd模块。 但centos系列的内核默认是不带这个模块的&#xff0c;所以就需要升级内核&#xff0c;简单的办法就是使用 elrepo的内核&#xff0c;该内核中包含了rbd模块。 安装方式非常的简单&#xff0c;可以安装…

大白话讲解遗传算法

博客原文&#xff1a;cnblogs.com/heaad/archive/2010/12/23/1914725.html 遗传算法 ( GA , Genetic Algorithm ) &#xff0c;也称进化算法 。 遗传算法是受达尔文的进化论的启发&#xff0c;借鉴生物进化过程而提出的一种启发式搜索算法。因此在介绍遗传算法前有必要简单的介…

01背包遗传算法C++实现

算法详解&#xff1a; http://blog.csdn.net/u011630575/article/details/70317251 一、代码如下&#xff1a; #include <windows.h> #include<stdio.h> #include<stdlib.h> #include<math.h> #include<time.h>/*数据集一*******************…

数据结构---双向链表实现队列与循环链表

大话数据结构 一、双向链表&#xff08;double linked list)如图26.5&#xff0c;是在单链表的每个结点中&#xff0c;再设置一个指向其前驱结点的指针域。双向链表的基本操作与单链表基本一样&#xff0c;除了插入和删除的时候需要更改两个指针变量&#xff0c;需要注意的是修…

系统级性能分析工具--Systemtap

SystemTap 是一款诊断Linux系统性能的工具&#xff0c;可以跟踪内核以及用户态程序中的任意函数、syscall、语句甚至指令&#xff0c;可以用来动态地收集调试和性能信息的工具&#xff0c;不需要我们重新编译、重启内核。缺点&#xff1a;用户需要自己编辑脚本测试文件。 假如…

Mac安装pillow模块

pip install --use-wheel Pillow

NumPy、Pandas、Matplotlib、 scipy机器学习库安装

NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵&#xff0c;比Python自身的嵌套列表&#xff08;nested list structure)结构要高效的多&#xff08;该结构也可以用来表示矩阵&#xff08;matrix&#xff09;&#xff09;。据说NumPy将Python相…

Mac下TensorFlow的部署和安装

$ sudo easy_install pip $ sudo easy_install --upgrade six $ sudo pip install --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.8.0rc0-py2-none-any.whl 安装完成后&#xff0c;即可运行测试用例 $ python ... >>> import tensor…