シェルで最後に改行の無いファイルを読むと最後の行は読み飛ばされる

たまーにあるんだけど
windowsで作ったファイルをlinuxで読み込むと
BOMが入ったり、末尾に改行がなかったりする。

その末尾の改行がないファイルを読み込むと
最後の行が読み飛ばされることがあった。

気づくまですげーめんどくさかった。。。


まあ解決方法はここをみればOK
qiita.com

while read LINE || [ -n "${LINE}" ]  # || [ -n "${LINE}" ] は末尾に改行がないときのため
  echo ${LINE}
do < ${FILE}

詳解 シェルスクリプト

詳解 シェルスクリプト

シェルプログラミング実用テクニック

シェルプログラミング実用テクニック