Linux下utf-8 BOM 文件的检查与删除

作者: JavasBoy 分类: Bash, Perl, Vim 发布时间: 2019-01-21 08:00 ė14,186 views 63条评论

当源程序是 gbk 格式,你转换为 utf8 的时候,很多情况是头部会出现 bom,如果是 php 代码,这样会出现很多意想不到的事情,那怎么办呢,你可以用 linux 命令来查找,然后对文件的 bom 进行删除。

grep -r $'\xef\xbb\xbf' * |grep .php

bom:UTF-8签名(UTF-8 signature)也叫做BOM(Byte Order Mark)

查询BOM:

:set bomb?

用 vim 去掉 utf-8 BOM

:set nobomb

保留 utf-8 BOM

:set bomb

vim 转换文件为 unix 格式

:set ff=unix

使用 grep 查找带 bom 的文件,并使用 perl 去掉 bom 头

grep -rl $'\xEF\xBB\xBF' . | xargs perl -i -pe 's{\xEF\xBB\xBF}{}'

本文出自 刘荣星的博客,转载时请注明出处及相应链接。

本文永久链接: https://www.liurongxing.com/check-file-utf-8-bom-and-delete-on-linux.html

3条评论

  1. 紫书海 2019年3月21日 11:13 回复

    写的很好,很喜欢

  2. repostone 2019年4月22日 18:42 回复

    博客页面打开慢。

    1. JavasBoy 2019年4月23日 10:26

      因为本博客使用的是国外VPS搭建,国内访问是有这种慢的情况。

紫书海进行回复 取消回复

电子邮件地址不会被公开。 必填项已用*标注

*

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Ɣ回顶部