bash – 在多个文件中添加缺失的换行符

前端之家收集整理的这篇文章主要介绍了bash – 在多个文件中添加缺失的换行符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一堆不完整的文件:最后一行缺少一个EOL字符。

添加换行符的最简单方法是使用任何工具(awk也许?)?

@H_403_6@ 要在文件末尾添加换行符:
echo >>file

要在当前目录中的每个文件的末尾添加一行:

for x in *; do echo >>"$x"; done

如果您不提前知道每个文件是否以换行结尾,请先测试最后一个字符。 tail -c 1打印文件的最后一个字符。由于命令替换截断任何最后的换行符,如果文件为空或以换行符结尾,$(tail -c 1< file)为空,如果文件以非换行符结尾,则为非空。

for x in *; do if [ -n "$(tail -c 1 <"$x")" ]; then echo >>"$x"; fi; done
原文链接:https://www.f2er.com/bash/387643.html

猜你在找的Bash相关文章