ファイルの中身を任意のコマンドの標準入力に渡し、その標準出力でファイルを置き換える方法
イメージとしては以下のようなこと。ただし、これだとご存知の通り期待した結果にはならない。
$ sort < data.txt > data.txt
ということで、普通は一時ファイルを作ることになるのだけど、 そうでなく無理やり頑張る方法。
$ ( rm data.txt; sort > data.txt ) < data.txt
$ ex -c '%! sort' -c 'wq' data.txt
$ sort =(< data.txt) > data.txt # zsh only
... まあ、裏でこっそり一時ファイル作られてたりするのだけど。