Linux/Unix下去除window下换行符^M

原文链接:http://jie-hui-520.blog.163.com/blog/static/600743012010111323911518/

2010-12-13 14:45:20|  分类: LINUX |  标签:linux  unix  ^m  换行   |字号 订阅

window下保存的文本文件,上传到Linux/Unix下后总会在末尾多了一个换行符^M,导致一些xmlinish等文件读取错误,下面介绍几种方法解决此类问题:

一、使用vi编辑器,vi是类Unix系统下功能强大的编辑器,利用vi,可以替我们解决很多问题:

1. vi 文件名

2.按下 Esc

3. 输入以下字符串: %s/^M//g  (注意,^M = Ctrl v + Ctrl m,而不是手动输入^M)

4. 直接回车 enter  ( ^M 清除成功)

5. :wq! (保存退出)

二、使用cat+tr生成新文件,然后再用mv命令重新覆盖原文件:

cat -v  原文件| tr -d "^M" > 新文件

mv 新文件 原文件

使用sed工具:

sed 's/^M//原文件>新文件

mv 新文件 原文件

注意:一跟三两种方法中的^M都是ctrl+v再ctrl+m后产生的,是一个单独的字符;第二种可以直接shift+6再加字母M生成

你可能感兴趣的:(Linux/Unix下去除window下换行符^M)