UTF-8のBOM付きとBOMなしを変換する方法(Linux)

linux-utf-8-bom
  • URLをコピーしました!

最近ではあまり意識しなくなりましたが、UTFー8にはBOMbyte order mark)という厄介な存在があります。
今回は、LinuxでこのBOMを付けたり外したりする方法をご紹介します。

目次

BOMとは?

BOMを簡単に説明すると、そのファイルがUnicodeで符号化されているかどうかを、先頭の見えない3バイトで表現するものです。

バイトオーダーマーク (英: byte order mark) あるいはバイト順マーク(バイトじゅんマーク)は通称BOM(ボム)といわれる、Unicodeの符号化形式で符号化したテキストの先頭につける数バイトのデータのことである。このデータを元にUnicodeで符号化されていることおよび符号化の種類の判別に使用する。

バイトオーダーマーク – Wikipedia

要は、この先頭の見えない3バイトが邪魔して、多くのシステムで問題になっています。

LinuxでBOMを変換する

まず、以下のコマンドで対象のファイルBOM付きか、BOMなしなのか確認できます。

実行した結果はこのように表示されます。

この「(with BOM)」があったらBOM付きということですね。
逆になかったらBOMなしという事になります。
それでは変換していきましょう。
ここでは、viのオプション-cを利用して、ファイルを開かずにBOM変換していきます。

BOMなし → BOM付き

BOM付きにするには、viで「bomb」をセットして保存しているだけです。

これでBOM付きになりました!

BOM付き → BOM なし

反対にBOMなしにするには「nobomb」をセットします。

これでBOMなしになりました!あとは先程のfileコマンドで確認してみてください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメント一覧 (1件)

  • […] 前回、Linuxで文字コードがUTF-8のファイルに対して、BOM付き⇔BOMなしを変換する方法をご紹介しました。 UTF-8のBOM付きとBOMなしを変換する方法(Linux)https://minory.org/linux-utf-8-bom.html最近ではあまり意識しなくなりましたが、UTFー8にはBOM(byte order mark)という厄介な存在があります。今回は、LinuxでこのBOMを付けたり外したりする方法をご紹介します。BOMとは?BOMを簡単に説明すると、そのファイルがUnicodeで符号化されているかどうかを、先…Minory 今回は、改行コードのLF⇔CRLFを変換する方法をご紹介します! […]

Linuxでファイルの改行コードLF⇔CRLFを変換する方法 | Minory へ返信する コメントをキャンセル

CAPTCHA


目次