为什么会出现这种情况呢?原因在于windows上ftp到unix主机的时候,会默认的在行尾加^M。
解决方法整理了一下,大概有下面这四种。
1. 在本地打开文件的时候,保存到服务器的时候选择ascii码格式,上传之后就不会出现了。
这种文本编辑工具很多,用ue就ok。
2. unix上面使用vi打开文件,在编辑的时候使用替换命令,如下:
:%s/^M//g (全文替换^M为空)
3. 使用强大的sed命令,组合参数实现替换。如下:
sed 's/^M$//g > newfilename
4. 使用unix上面的工具,unix2dos和dos2unix。
使用方法如下:unix2dos filename1 filename2
注意:有些机器上是没有安装这个工具的,那就不能用这个办法了。
注2:^和M作为特殊字符,如何打印出来?
^:ctrl+v
M:ctrl+m