スポンサーリンク
fileコマンドで改行コードを確認
fileコマンドで改行コードを確認できます。
下記にfileコマンドの実行例を載せたいと思います。
※MACターミナル(BSD系)での動作確認です。
nkfで改行コードをCRLFに変換します。
$ nkf -Lw --overwrite file1.txt
CRLFの改行コードと確認できました。
$ file file1.txt file1.txt: UTF-8 Unicode text, with CRLF line terminators
nkfで改行コードをLFに変換します。
$ nkf -Lu --overwrite file1.txt
LFの場合、改行コードは何も表示されません。
$ file file1.txt file1.txt: UTF-8 Unicode text
nkfで改行コードをCRに変換します。
$ nkf -Lm --overwrite file1.txt
CRの改行コードと確認できました。
$ file file1.txt file1.txt: UTF-8 Unicode text, with CR line terminators
MACの場合はHomebrewでnkfをインストールしました。
$ brew install nkf
スポンサーリンク
findで再帰的にディレクトリ以下のファイルの改行コードを確認
findとfileコマンドを組み合わせます。
下記のように、再帰的に確認できます。
$ find . -type f -exec file {} \; ./dir/file5.txt: UTF-8 Unicode text ./dir/file6.txt: UTF-8 Unicode text ./file1.txt: UTF-8 Unicode text ./file2.txt: UTF-8 Unicode text ./file3.txt: UTF-8 Unicode text ./file4.txt: UTF-8 Unicode text
3ファイルをCRLFの改行コードに変換します。
$ nkf -Lw --overwrite file1.txt file3.txt dir/file5.txt
findとfileとgrepを組み合わせて、CRLFの改行コードのファイルを抽出しています。
$ find . -type f -exec file {} \; | grep CRLF ./dir/file5.txt: UTF-8 Unicode text, with CRLF line terminators ./file1.txt: UTF-8 Unicode text, with CRLF line terminators ./file3.txt: UTF-8 Unicode text, with CRLF line terminators
下記のような使い方もできますね。
ディレクトリ以下全てのファイルを、LFの改行コードに変換します。
$ find . -type f -exec nkf -Lu --overwrite {} \;
スポンサーリンク