我需要删除文件中的所有行,但基本上保留一个没有内容且没有行的空文件。据我所知,人们可以做到这一点:
rm file.txt 2> /dev/null
touch file.txt
但是,BASH中是否有更简单,更规范的解决方案?
答案 0 :(得分:8)
这是我一直使用的非常快的方式:
> file.txt
它会完全清空文件并更新修改时间。
答案 1 :(得分:3)
您可以使用截断。
truncate -s 0 filename
答案 2 :(得分:2)
清空文件的另一种(野蛮)方式如下:
cat /dev/null > filename