$ cat hoge.txt > hoge.txt

これを実行すると、「hoge.txtの中身がそのままhoge.txtに書き出されて結果的に中身は同じになる」と思っていたのですが、実行してみるとファイルの中身が空になり、容量も0バイトになってしまいます。

他のコマンドでも同様に読み込みファイルにたいして>をつかって上書きしようとすると中身が消えてしまいます。

上書きしたい場合はどうしたらよいのでしょうか。