linx下特殊字符处理

在windows下编辑的文件,放到linux下执行经常会出现各种莫名其妙的问题,用vim打开查看文件,会看到一些特殊字符,常见的有
1. ^M 
该字符出现在一行文本的结尾,出现的原因是windows使用CR(回车\r)LF(换行\t)两个字符来作为一行文本的结束符号,而linux下是使用LF单个字符作为单行文本结束,因此在windows下编辑过的文本中如果使用过回车来换行,在linux下就会出现^M字符,可以用如下命令来消除:
sed -i  's/\r//g' fileName
-i 表示在原始文件中直接修改,重定向则可以用:
sed 's/\r//g' oldFileName > newFileName

2. BOM
该字符是由于在windows下编辑的文件,采用utf作为编码格式保存时,编辑器会在文件开头添加一个BOM标记(Byte Order Mark)来标识utf编码所采用的字节序,使用如下命令可以看到文件头的BOM字符:
cat fileName | head -1 | sed -n l
 

转载自:https://blog.csdn.net/weeniebear/article/details/19405441

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值