删除 linux <feff>

linux下处理windows utf8文件,发现vim头会多一个<feff>

1. linux  vim 中的<feff>

    <feff>被称作BOM(Byte Order Mark)的不可见字符,是Unicode用来标识内部编码的排列方式的,在UTF-16、UTF-32编码里它是必需的,而在UTF-8>里是可选的

      linux下删除<feff>:  grep -I -r -l $'\xEF\xBB\xBF'  file | |xargs sed  -i  's/\xEF\xBB\xBF//'

自己项目中批量删除文件:

#!/bin/sh

filelist=$(ls)
echo "all file"
for file in $filelist
do
        echo $file
    #if [ -d $file ]
    #then
        #tar -cf $file.tar $file
    grep -I -r -l $'\xEF\xBB\xBF'  $file | xargs sed  -i  's/\xEF\xBB\xBF//'
                #echo $file
    #fi
done

2.  linux  vim 中的^M

  在Linux下使用vi来查看一些在Windows下创建的文本文件,有时会发现在行尾有一些“^M

  去掉^M

     1> dos2unix file

     2> sed -i "s=^M==g" file

     3> vim打开时候用 :%s/^M//g


转载于:https://my.oschina.net/u/264186/blog/602088

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值