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
我们查看下内容
cat -v test.sh#!/bin/sh^M
^M
echo chenyu ^M