"はちょうどバグですか、それとも何か意味がありますか?">
|>
タイプミスを出しましたが、bash
何も印刷されませんでした。 (ただし、空のファイルが生成されます。) たとえば、
date |> tmp.txt
それは実際に何か意味があると思いましたか?
ベストアンサー1
これは、2番目の部分がリダイレクトのみを含む空のコマンドであるパイプラインのようです。このように書いてdate | >file
説明する方が簡単かもしれませんね。空のコマンドは、リダイレクトを処理してファイルを生成する以外は何もしません。
date >| file
一方、noclobber
シェルオプションをオーバーライドすることで、>
既存のファイルが定期的に上書きされるのを防ぎます。
$ touch foo; set -o noclobber
$ date > foo
bash: foo: cannot overwrite existing file
$ date >| foo # works