【Linux】LinuxでCRLFとLFを一括で相互変換する
ひでまる
09月07日, 2022
目次
コーディングしてると CRLF と LF が混在してストレスが溜まる機会があります
その時にコマンド一つでどちらかに変換できると便利なので、その方法を書き残します
nkf コマンド
nkf コマンドとは Linux や Windows で異なる改行コードを変換するためのコマンドです
インストール
Ubuntu
$ sudo apt install nkf
Arch
$ sudo pacman -S nkf
Mac
$ brew install nkf
使い方
使い方は以下の通りです
引数に -u と -w がありますが、それはそれぞれ Unix
(LF) と Windows
(CR+LF) の訳です
CRLF to LF
$ nkf -Lu --overwrite <変換するファイル>
LF to CRLF
$ nkf -Lw --overwrite <変換するファイル>
--overwrite とは
–overwrite オプションとは既存のファイルを直接上書きするオプションです
このオプションを入力しなかった場合はターミナルに改行コードが変換された文章が出力されるだけで、変換元のファイルの改行コードは変換されてません
変換する場合は–overwrite をつければ良いでしょう
カレントディレクトリ内のファイルを全て変換
CRLF to LF
$ grep -Ilrs `printf "\r\n"` . | xargs nkf -Lu --overwrite
こちらは find コマンドでファイルを検索して範囲に入れて、grep で改行コードが CRLF のファイルを検索して範囲を狭めて、その結果を nkf で LF に変換するコマンドです
LF to CRLF
$ grep -Ilrs `printf "\n"` . | xargs nkf -Lw --overwrite
こちらも同様に CRLF に変換しております
alias に登録すると便利
よく使うコマンドなので、alias に登録しましょう
alias crlf2lf="grep -Ilrs `printf "\r\n"` . | xargs nkf -Lu --overwrite"
alias lf2crlf="grep -Ilrs `printf "\n"` . | xargs nkf -Lw --overwrite"
これを実行することで楽に改行コードの相互変換が可能です。
Other articles
12月16日, 2022
【GitHub】GitHubにSSH接続する方法
GitHub では 2021年の8月13日 にパスワード認証が廃止されたので、重い腰をあげて SSH で GitHub にアクセスするように設定します。
09月07日, 2022
【Linux】LinuxでCRLFとLFを一括で相互変換する
コーディングしてるとCRLFとLFが混在してストレスが溜まる機会があります。 その時にコマンド一つでどちらかに変換できると便利なので、その方法を書き残します。