Unix体系里,每行结尾只有“<换行>”,即“\n”;
Windows体系里面,每行结尾是“<换行><回 车>”,即“\n\r”。
一个直接结果是,Unix体系下的文件在Windows里打开的话,全部文字会变成一行;
而Windows里的文件在Unix下打开的话,在每行的结尾可能会多出一个^M符号。linux
方法1:ide
在命令模式下:输入:%s/^M//g 而后,回车便可替换 注,其中”^M”的输入,分别是“Ctrl+v”、“Ctrl+M”键生成的
方法2:工具
使用vi打开文本文件 vi dos.txt 命令模式下输入 :set fileformat=unix :w
方法3:unix
使用sed 工具 sed ’s/^M//’ filename > tmp_filename
方法4:code
既然window下的回车符多了‘\r’,那么固然经过删除‘\r’ ,也能够实现: tr -d ‘\r’
方法5:(最经常使用的方法)orm
在终端下敲命令: $ dos2unix filename 直接转换成unix格式,就OK了!~
sed -i 's/\r//' startup.shit
window下默认是 \r\n linux下是\n unix下是\r