【改】utf-8 的去掉BOM的方法


最近在测试中发现,linux系统中导出的文件,有记事本打开另存为或者保存后,再次导入进linux系统,发现失败了,对比文件内容,没发现区别,打开二进制文件对比发现,文件头部多了三个字符:EF BB BF。

通过网络查找答案知,windows记事本等采用utf8 BOM格式,而Linux下采用UTF-8无BOM格式,上述三个字符即BOM。

去掉BOM方法:

1. # cat INFILE | sed 's/\xef\xbb\xbf//g' > OUTFILE    ;     sed -i 's/^\xEF\xBB\xBF//g' test.txt  //直接修改

2. # awk '{if(NR==1)sub(/^\xef\xbb\xbf/,"");print}' INFILE > OUTFILE

3.# tail --bytes=+4 INFILE > OUTFILE  ##没有判断标示


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM