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

我有一堆不完整的文件:最后一行缺少一个EOL字符。

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

要在文件末尾添加换行符:
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

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...