最近在项目中涉及到前后台文件传输,遇到个常见问题,文件格式问题。因为Windows和Linux的文件结尾编码不同,所以经常会出现文件中出现“^M”的问题。之前博文《Linux下处理文件内容中的^M》有讲过如何处理文件中的“^M”,如果你需要处理的文件比较多,你可以用这个工具批量的转换文件。可是服务器上没有dos2unix这个工具。只能自己安装。
下载:
开源中国的介绍: http://www.oschina.net/news/28676/dos2unix-6-0-released
官网的下载地址 :h ttp://waterlan.home.xs4all.nl/dos2unix.html
下载最新版本到本地。
上传与解压:
上传到Linux服务器 /usr 目录下;
localhost$ tar -xvzf dos2unix.6.xx.tar.gz
安装:
进入到 dos2unix 目录 执行命令:
localhost$ make localhost$ make install
测试:
从windows上随便ftp一个文本文件,比如filename.txt。
检查文件格式:
localhost$ file filename.txt
显示如下:
文件是带有CRLF行尾符的。
执行转换命令:
localhost$ dos2unix filename.txt
再次检查文件格式:
localhost$ file filename.txt
显示如下:
打开文件“^M”行尾符就去掉了。