1. Home
  2. Linux
  3. Linuxに文字コード変換コマンドnkf(Network Kanji Filter)をインストールする

Linuxに文字コード変換コマンドnkf(Network Kanji Filter)をインストールする

  • 公開日
  • カテゴリ:Linux
  • タグ:Linux,nkf,CharacterCode
Linuxに文字コード変換コマンドnkf(Network Kanji Filter)をインストールする

nkf(Network Kanji Filter) は、文字コードの変換を行うソフトウェア・ API です。

相互変換に対応している文字コードは以下になります。

  • ISO-2022-JP(JIS コード)
  • cp932(Shift-JIS)
  • EUC-JP(日本語 EUC)
  • UTF-8(Unicode)
  • UTF-16(Unicode)

文字コードの変換の他に、base64 へのエンコード・デコード、半角・全角への変換も可能です。

nkf自体とても古いものになりますが、メンテナンスプロジェクトも存在しています。

文字コード操作において、Linux では iconv コマンドが標準で導入されていますが、nkf も一方で使われているものなので、最新版の導入方法をここにメモしておきます。

nkf インストール

まずはメンテナンスプロジェクトのページへ行き、最新版を確認します。
https://ja.osdn.net/projects/nkf/

最新版をダウンロードし、コンパイル・インストールを行います。

# ダウンロード
wget 'https://ja.osdn.net/frs/redir.php?m=jaist&f=nkf%2F64158%2Fnkf-2.1.4.tar.gz' -O nkf-2.1.4.tar.gz

# 解凍
tar zxvf nkf-2.1.4.tar.gz

# 移動
cd nkf-2.1.4

# コンパイル
make

# インストール
make install

処理が完了したら、インストールの確認を行います。

[demo@localhost nkf-2.1.4]$ nkf --version
Network Kanji Filter Version 2.1.4 (2015-12-12) 
Copyright (C) 1987, FUJITSU LTD. (I.Ichikawa).
Copyright (C) 1996-2015, The nkf Project.

これでインストールは完了です。

動作確認

nkf コマンドを使って動作確認を行ってみます。今回はファイルではなく、文字列を Unicode のコードポイントに変換してみます。

[demo@localhost ~]$ echo -en "渡" | nkf -W -w32B0 | xxd -ps -c4 | sed 's/^0*//'
6e21

正常に動作する事を確認できました。

Author

rito

  • Backend Engineer
  • Tokyo, Japan
  • PHP 5 技術者認定上級試験 認定者
  • 統計検定 3 級