Normally we use a different file to redirect the output.
For example :
cat < first > temp
In this command the contents of first are redirected to temp instead of the standard output.
Then why does it truncates the file if I use the same file name?
Why can't it overwrite the same file?
cat < first > first