Windowsのメモ帳で作成したテキストファイルがCygwinで文字化けしてしまいました

WindowsマシンにCygwinをインストールして使っています。Windowsマシンでも、Cygwinを入れておくと何かと便利です。バッチ処理をする場合などは、特に重宝しています。ところで、そのCygwinでメモ帳で作成したテキストファイルを開こうとしたところ、文字化けが発生しました。Windowsのテキストファイルの文字コードはShift-JISである一方、

Linux等、最近ではUTF-8が使われています。表示もさることながら、ファイルの変換が面倒なこともあり、最初から文字コードをUTF-8に指定してNotepad++でテキストファイルを作成したりしていました。今回のように、別のコードで作成してしまったファイルをCygwinで開いたとき、初めて文字化けに気づきます。ファイルのコード変換はわずらわしいと、常々感じていました。調べてみたところ、ファイルの文字コード変換には、nkf(Network Kanji Filter)という便利なツールがあることがわかりました。

ツールは、以下のサイトからダウンロードします:
nkf Network Kanji Filter
https://ja.osdn.net/projects/nkf/

tar xvfz nkf-2.1.4.tar.gzをCygwin上で展開
makeでビルドして、
make installします。

私のCygwin環境(デフォルトインストール)には、makeもgccも入っていなかったので、それらのインストールから始めました。

Cygwinのセットアップファイル(setup-x86_64.exe)を起動し、
GUI画面のView:Not Installed,Search:makeで検索します。
同様に、gccもインストールして、ようやくインストールを開始できました。

nkfの使い方の一例:

//UTF-8に変換
$ nkf -w ファイル名
//Shift_JISに変換
$ nkf -s ファイル名
//EUC-JPに変換
$ nkf -e ファイル名
文字化けしたテキストファイル
文字化けしたテキストファイル

nkfは標準出力に出力されるので、ファイル変換するにはパイプ”>”を使います。

$ nkf -w test.txt > testw.txt
文字コードがUTF-8に変換されて文字化けが消えました
文字コードがUTF-8に変換されて文字化けが消えました

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です