概述
在腳本中通過while read循環讀取文件內容時,如果文件格式不是UNIX,並且文件最後一行不是以空行結束,那麼在讀取的時候始終無法正確處理最後一行數據,其原因就是因爲回車換行符的問題,所以爲了解決這個問題,可以在處理前簡單判斷下文件末尾是否有換行。
tail -n1 <your file> | wc -l
輸出爲1表示有換行, 輸出爲0無換行
解決
e.g :
if [ $(tail -n1 <your file> | wc -l) -eq 1 ];then
echo "Newline at the end of the file"
fi