|>
タイプミスを出しましたが、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
答え2
はい、bashの場合は> file
名前が file
。file
[[email protected] my-tests]$ date | > my_file
[[email protected] my-tests]$ cat my_file
[[email protected] my-tests]$