6

I am new to Linux. There is something that is unclear to me.

What is the difference between echo "" > logfile and > logfile ?

When I run the first one, the logfile size doesn't become zero and same name file will be created with 1 byte size. For the second one, logfile size will become zero and same name file will be created with 0 byte size.

In what situations should the commands be used differently?

For me, I use it when I want to free up the log files.

  • 2
    There is also : > logfile, which might be a little more portable than just > logfile as the latter can behave differently in some shells. – Patrick Jun 18 '12 at 22:55
12

They do essentially the same thing. You're seeing a file size difference because echo includes a newline at the end, which takes up a byte. You can stop it with -n, so echo -n "" > logfile will result in a 0-byte file

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.