我试图获得两个文件之间的差异,即使文件看起来相同,但它显示了它在开头有空行的区别
如何在做差异之前删除空行
我知道sed -i' / ^ $ / d应该可以工作但是它对我来说没有任何其他方式
谢谢
答案 0 :(得分:1)
请参阅diff man page:
-B, --ignore-blank-lines
ignore changes where lines are all blank
答案 1 :(得分:1)
如果要删除所有空行(不包含非空白字符),可以执行以下操作:
perl -i -pe 's/^\s*\z//' yourfile.txt
或者,假设GNU sed:
sed -i '/[^ \t]/!d' yourfile.txt
这并不完全相同,因为perl的\s
将更多的东西视为空白而不仅仅是空格和制表符。