今回はAlmaLinux8でファイルの改行コードを確認する方法についてご紹介いたします。
◾️改行コードとは?
改行コードは、テキストファイル内で行を区切るために利用される特殊文字となります。
コンピュータシステムでは、改行コードをテキスト行の終わりを示す特殊文字として認識し、それに応じた処理を実施します。
改行コードは、OSや環境に応じて異なり主に下記の3種類が利用されております。
OS | 改行コード | 表記 |
---|---|---|
Unix系OS(LinuxやmacOS等) | LF | \n |
Windows | CRLF | \r\n |
古いmacOS | CR | \r |
◾️fileコマンドで確認する方法
fileコマンドを使用し改行コードを確認するには以下のように引数にファイル名を指定し実行します。
file ファイル名
下記「test.txt」を利用し確認した例となります。
CRLFの場合
CRLFの場合は以下のように表示されます。
test.txt: news or mail, ASCII text, with CRLF line terminators
LFの場合
LFの場合は以下のように改行コードは何も表示されません。
test.txt: ASCII text
混合している場合
混合している場合は以下のように表示されます。
test.txt: news or mail, ASCII text, with CRLF, LF line terminators
◾️catコマンドで確認する方法
catコマンドを使用し改行コードを確認するには以下のようにオプション「A」を指定します。
また、引数にファイル名を付け実行する事で確認できます。
cat -A ファイル名
下記「test.txt」を利用し確認した例となります。
CRLFの場合
CRLFの場合は以下のように「^M$」が末尾に表示されます。
cat -A test.txt
test^M$
test2^M$
test3^M$
test4^M$
LFの場合
LFの場合は以下のように「$」が末尾に表示されます。
cat -A test.txt
test$
test2$
test3$
test4$
◾️odコマンドで確認する方法
catコマンドを使用し改行コードを確認するには以下のようにオプション「c」を指定します。
また、cat同様に引数にファイル名を付け実行する事で確認できます。
od -c ファイル名
CRLFの場合
CRLFの場合は以下のように「\r \n」が表示されます。
od -c test.txt
0000000 t e s t \r \n t e s t 2 \r \n t e s
0000020 t 3 \r \n t e s t 4 \r \n
0000033
LFの場合
LFの場合は以下のように「\n」が末尾に表示されます。
od -c test.txt
0000000 t e s t \n t e s t 2 \n t e s t 3
0000020 \n t e s t 4 \n
0000027
◾️nkfコマンドで確認する方法
nkfコマンドを使用し改行コードを確認するには以下のようにオプション「–guess」を指定します。
また、cat同様に引数にファイル名を付け実行する事で確認できます。
nkf --guess ファイル名
CRLFの場合
CRLFの場合は以下のように表示されます。
nkf --guess test.txt
ASCII (CRLF)
LFの場合
LFの場合は以下のように表示されます。
nkf --guess test.txt
ASCII (LF)
混合している場合
混合している場合は以下のように表示されます。
nkf --guess test.txt
ASCII (MIXED NL)