我有一个在最后一行末尾没有 EOL 的文件。当我从中读取的 bash 脚本没有处理最后一行时,我注意到了这一点。
我是这样读的:
while read LINE
do
...
done <thefile
该文件已提供给我,因此在它登陆我的系统之前我无能为力(Linux - OpenSuSE 10.2)。我确实dos2unix在文件上运行,但这并不能解决丢失的 EOL。
我见过几个涉及viand的解决方案ed,但它们有点笨拙,我希望有一个更整洁的解决方案,也许使用sed,我可以在我的 bash 脚本中使用?
奇怪vi的是,当我归档并执行 a时,我可以在最后一行的末尾:set list看到一个“ ”。$我原以为它会丢失,因为我认为“ $”代表\n。或者换行符和换行符之间可能有区别?