インデントを4spaceに、改行コードをunixに変換するシェルスクリプトを書いた

今のプロジェクトで適用しているルールで使用するものなので
完全にオレ専用スクリプト。github上に公開している。
あとはてなダイアリーでgist使えるか試したかったのでエントリー書いた。

validation

  1. 引数判定
  2. ファイル存在判定
  3. ファイルの種別判定(テキストのみ許容)

解説

簡単な解説。

is_textは数値が入る

file -bでファイル種別の出力を行いgrep と wcで結果を取得

変換の処理

tmp_file_name=$$ でPID(プロセスID)を格納。
これは一意なファイル名を設定するため。


sedでtabを4spaceに置換。
tr -dで\r\nの改行コードを\nに変換。


>で$tmp_file_nameに出力して最後にmvで元のファイルに変更。
直接に$file_nameに吐き出さないのは$file_name > $file_nameだと
length 0で保存されてしまうため。