shell 及相关 / 未分类 · 2015年5月20日

将DOS格式文本文件转换成UNIX格式

有些哥做了运维又喜欢在win 下写脚本 ,于是常常问我 为什么他的脚本好好的 在linux上运行起来各种报错, 竟然不能叫他们像我一样用linux作桌面写脚本,只好找个办法了
方法一 除了上次说的 dos2uinx 因为他一般不内置在系统中,不如下面的这个方便用
方法二 用vim
解决方法:vim 脚本名
:set ff
查看这里结果是fileformat=dos,如果如这个结果,你看到这里就知道问题了吧
设置:
set ff=unix
ps
nix系统本身的一些文件,执行set ff?可以看到提示fileformat=unix,而我们传递过去的是fileformat=dos,这两种系统在换行符上处理稍有不同,如果一些配置文件依赖不同的行数是不同的配置,可能就会引起错误,尤其执行的时候可能不会报警就更加隐藏了问题。我们有时候用vim打开一些文档发现里面带^M字符其实就是这个问题。