Reputation: 24363
I need to delete all lines in a file, but leave essentially an empty file with no content and no lines. As best I know, one can do this:
rm file.txt 2> /dev/null
touch file.txt
However, is there a simpler, more canonical solution in BASH?
Upvotes: 10
Views: 10737
Reputation: 2204
Another (brutal) way to empty a file would be the following:
cat /dev/null > filename
Upvotes: 6
Reputation: 289605
This is a pretty fast way I always use:
> file.txt
It completely empties the file and updates the modification time.
Upvotes: 27