Web制作で使えるLinuxコマンド vol.5

2011年4月28日 by Tomoya Yaguchi

今回もWeb制作で使えるLinixコマンドをご紹介します。





今回ご紹介するのは

『nkf』


日本語を扱うWebサイトではShift-JISやEUC-JP、UTF8など様々な文字コードが使われています。
また、Linux上においてもUTF8が普通になりましたが、EUC環境もまだまだ多く、文字コード変換が必要になることもあります。
そんな時に使えるのがファイルの文字コードを変換してくれるnkfです。

使い方は簡単で、下記のようなオプションを指定することで、それぞれの文字コードに変換できますが、
標準出力のままでは使いにくいため、ファイルに保存する場合はリダイレクトの">"や">>"を用いファイル出力をします。


オプション 解説
-b バッファリング出力を行う
-j JISコードに変換する
-e EUCコードに変換する
-s シフトJISコードに変換する
-w UTF8コードに変換する
-i? JIS漢字を指示するシーケンスとして ESC-'$'-?を使用する
-o? 1バイト英数文字セットを指示するシーケンスとしてESC-'('-?を使用する
-r ROT13/47の変換する
-T テキスト・モードで出力する
-l 0x80-0xfeのコードをISO-8859-1 (Latin-1)として扱う。ただし,JISコードの時のみ有効
-f? 一行?文字になるように簡単な整形を行う
-Z X0208中の英数字と一部の記号をASCIIに変換する
-J JIS(ISO-2022-JP)と仮定して処理する
-E 日本語EUCと仮定して処理する
-S シフトJISと仮定して処理する
-X シフトJISと仮定して処理する。ただし,X0201仮名があるものとする
-B 壊れた(ESCが欠損した)JISと仮定して処理する。
-B1の場合はESC-(およびESC-$)のあとのコードを問わない。
-B2の場合は改行の後に強制的にASCIIに戻す
-x 通常行われるX0201仮名->X0208の仮名変換しない
file 変換元のファイルを指定する


【使用例】UTF8コードに変換する

$ nkf -w sample01.html >sample02.html
※オプションに何も指定しない場合はJISコードに変換されます。
また下記のようにWindowsで使われる改行記号【CR+LF】を、Linuxの【LF】のみに変換する事もできます。
「-L」オプションを付けて、「u」を付けた 場合は改行記号が【LF】に、
「w」は【CR+LF】,「m」は【CR】になります。

【応用】Windows上で作成したhtmlファイルをLinux用に文字コードを「EUC」,改行記号を「LF」に変換する

$ nkf -e -Lu sample03.html > sample04.html

ファイルの文字化けだけをさっと直したい場合などにはとても使えるコマンドだと思います。
是非一度お試し下さい。


  • Index
  • Back
  • Index
  • Back

スタッフ

  • 平竹仁士
  • 河西裕一
  • 柳澤健一
  • 小林秀太郎
  • 丸山幸男