如何使用shell脚本删除文本文件中最后一个换行符

2024-11-25 21:46:18
推荐回答(3个)
回答1:

每行末尾都有一个换行符的。只删除最后一个换行符,就意味着将文件的倒数第二行与最后一行合并成一行。我这个题意理解得正确吗?


如果是这样:

line=`sed -n '$=' file.txt` #计算文件行数
let line-=1 #得到倒数第二行的行号
sed -i $line'{N;s/\n//}' file.txt #去除倒数第二行后的换行符


计算文件行数用wc也可以:

wc -l file.txt | cut -d' ' -f1

回答2:

sed '$'d test.txt

回答3:

sed -i '$d' filename.txt