晴耕雨読

working in the fields on fine days and reading books on rainy days

改行コードがLFのcmdファイル一覧を表示させる

改行コードがLFのcmdファイルの一覧を表示させるには、以下のコマンドを実行します。

コマンド

Windows上の Git Bash などで実行する想定です。

find . -type f -name '*.[Cc][Mm][Dd]' -exec sh -c "file '{}' | grep -v 'with CRLF'" \;

解説

fileコマンドは、引数に指定したファイルの情報を表示してくれるコマンドです。 ファイルの形式のほかに、改行コードについても出力されます。 CRLFで改行が終わる場合は「with CRLF line terminators」と出力され、LFで改行が終わる場合は何も出力されません。

そのため、grep -v で「with CRLF」の文字が含まれないものを抽出することで、改行コードが LF になっているものを効率よく見つけることができます。

また、findコマンドで現在のフォルダから再起的に調べることができます。 引数の -name では拡張子が大文字の CMD か小文字の cmd の両方がマッチするようにすると漏れなく調べることができます。

以上です。