概述
在脚本中通过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