如何去除UNIX系統下文件中的换行符^M

       因操作系统的差异,在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
    或者cat filename | tr -d "\r" > filename
    在有多个文件要处理时,将上述命令写到一个脚本中用循环进行批量处理即可。
posted @ 2023-08-17 14:41  whisper_hm  阅读(159)  评论(0)    收藏  举报