答案1
如果您确定文件以换行符结尾,只需删除最后一个字节,例如使用head -c-1 troisignaux.txt > temp.txt; mv temp.txt troisignaux.txt
.
请注意,我真的找不到您正在做的单个用例好的主意。您正在破坏文件的系统结构:它始终是一个数字后跟一个换行符。
请注意,有时编码标准甚至强制要求最后一行应以换行符结尾;这既是为了结构,也是为了连接文件时的安全:您始终可以连接两个文件,其中每行都以换行符结尾,但是如果您在删除最后一个换行符后将一个数字(例如 32)连接到文件,它将以数字结尾-6432
。
答案2
没有第四个空行。这就是文本编辑器通过将光标放在第四行上来显示第三行末尾有换行符的方式。例如 VS Code 的行为就像这样。另一个编辑器,例如VIM,会将光标放在第三行而不显示第四行。使用 VS Code,您可以通过简单的退格键删除第三行的换行符。 VIM 不会这样做,如果保存文件时最后一行没有换行符,它会添加换行符。
解决方案是使用不同的文本编辑器。