2018-07-01_Linuxで文字コードと改行コードを確認、変換する

このページでわかること

  • linux環境で文字コード、改行コードの確認方法
  • linux環境で文字コード、改行コードの変換方法

よく使うわりに、毎回検索してしまっているので備忘メモです。

環境

  • Ubuntu 18.04 LTS

※nkfコマンドを使っているのだけなので他のディストリビューションでも問題なく動きます。

文字コードと改行コードの確認、変換

nkfコマンドとfileコマンドをを使うことで簡単に実施できます。

  • 文字コードの確認: nkfコマンドを使用
  • 改行コードの確認: fileコマンドを使用
  • コード類の変換: nkfコマンドを使用
オプション 効果 対象
-g 確認 文字コード
-w UTF-8に変換 文字コード
-s Shift-JISに変換 文字コード
-e EUCに変換 文字コード
-Lu LF(unix形式)に変換 改行コード
-Lw CRLF(windows形式)に変換 改行コード
-Lm CR(Mac形式)に変換 改行コード
--overwrite 上書き保存 文字・改行コード
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
##c 文字コードの確認と変換
$ nkf -g testfile.txt
Shift_JIS
$ nkf -w testfile.txt > testfile.utf.txt
$ nkf -g testfile.utf.txt
UTF-8

##c 改行コードの確認と変換
$ file testfile.txt
testfile.txt: Non-ISO extended-ASCII text, with CRLF line terminators
$ file testfile.lf.txt
testfile.lf.txt: UTF-8 Unicode text

##c 改行コード、文字コードを両方を一括で変換も可能
$ nkf --overwrite -w -Lu testfile.txt
$ nkf -g testfile.txt
UTF-8
$ file testfile.txt
testfile.txt: UTF-8 Unicode text