因操作系统的差异,在Windows系统编辑文件时的换行符是CRLF,而在Unix系统(包括AIX、LINUX)编辑文件时的换行符为LF,当把在Windows系统编辑的文件传送到Unix系统上后,查看文件会发现每行后面多了一个^M符号,这个有可能会导致在执行某些脚本时出现问题,那么该如何解决呢?
1、当需要操作的文件不多时,可以使用编辑器的转换功能:
- 使用 UltraEdit 编辑器的转换功能:导航栏的“高级”选项 -> 选择 “转换” -> 选择点击 “DOS 到 UNIX ” (若有需要还可调整编码)-> 保存文件
2、当需要操作的文件特别多时,使用第一种方法就很费劲了,那么可以这样处理:
- Linux:
dos2unix filename
- Aix :
cat filename|perl -pe '~s/\r//g' > filename
在有多个文件要处理时,将上述命令写到一个脚本中用循环进行批量处理即可。