iconvコマンドでエンコーディング変換 macOS/Linux/Unix
iconvの基本的な使い方
iconv
コマンドは、異なる文字コード間でテキストファイルのエンコーディングを変換するために使用されるコマンドラインユーティリティです。このコマンドは、多くのUNIX系オペレーティングシステムやLinuxディストリビューション、そしてmacOSで利用可能です。
iconv -f 元のエンコーディング -t 目的のエンコーディング 入力ファイル名 > 出力ファイル名
-f
または--from-code
オプションで元のエンコーディングを指定します。-t
または--to-code
オプションで変換後のエンコーディングを指定します。- 入力ファイル名の後には、変換したいファイルの名前を指定します。
- 出力は標準出力に送られるので、リダイレクト
(
>
) を使用してファイルに保存することが一般的です。
エンコーディングの一覧表示
利用可能なエンコーディングの一覧を表示するには、以下のコマンドを使用します。
iconv -l
iconvの使用例
UTF-8のテキストファイルをShift_JISに変換する例:
iconv -f UTF-8 -t SHIFT_JIS input.txt > output.txt
ISO-8859-1のテキストファイルをUTF-8に変換する例:
iconv -f ISO-8859-1 -t UTF-8 input.txt > output.txt
注意点
- 変換できない文字がある場合、
iconv
はエラーを出力します。これを回避するには、-c
オプションを使用して、変換できない文字を出力から除外することができます。 - テキストデータに特定のエンコーディングが適用されていることを確認することは重要です。誤ったエンコーディングを指定すると、データが正しく変換されない可能性があります。
関連記事
- ls・tree・sort・uniq コマンドの使い方
- nkfコマンドで文字コード変換 macOS/Linux/Unix
- macOSで学ぶfind・grepの基本テクニック・実用例
- less|シェル
- sed|シェル