linux之dos2unix命令解决vi打开文件行尾巴显示^M

举报
chenyu 发表于 2021/07/26 23:41:04 2021/07/26
【摘要】 1 问题 有时候我们用vi打开文件,行尾巴显示^M,我之前也不知道这个是为什么,后面才了解到,DOS格式的文本文件在Linux平台,用较低版本的vi打开文件行尾会显示^M,DOS下的文本文件是以\r\n作为断行标志的,表示成十六进制就是0D 0A。而Unix下的文本文件是以\n作为断行标志的,表示成十六进制就是0A。       &nb...

1 问题

有时候我们用vi打开文件,行尾巴显示^M,我之前也不知道这个是为什么,后面才了解到,DOS格式的文本文件在Linux平台,用较低版本的vi打开文件行尾会显示^M,DOS下的文本文件是以\r\n作为断行标志的,表示成十六进制就是0D 0A。而Unix下的文本文件是以\n作为断行标志的,表示成十六进制就是0A。

 

 

 

 

 

 

 

 

 

2 解决办法 

我们可以使用dos2unix来解决vi打开文件行尾会显示^M,也就是把这个dos文件转换成unix文件,文本文件是以\r\n作为断行变成\n断行。

dos2unix file
 

 

 

 

 

 

 

 

 

 

 

3 dos2unix说明

dos2unix命令用来将DOS格式的文本文件转换成UNIX格式,一般使用

dos2unix file
 

转多个文件

dos2unix file1 file2
 

 

 

 

 

 

 

 

 

 

4 自己测试

比如我们有个dos文件的脚本文件,test.sh
我们查看下内容


  
  1. cat -v test.sh
  2. #!/bin/sh^M
  3. ^M
  4. echo chenyu ^M

文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。

原文链接:chenyu.blog.csdn.net/article/details/94664226

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。