名前付きパイプで使用される > と >> の違い

名前付きパイプで使用される > と >> の違い

次のコードの 2 つのリダイレクトには違いがありますか?

mkfifo foo
echo > foo  
echo >> foo

答え1

そこにはすべき違いはありません。 はフラグ>>付きで FIFO を開きますO_APPENDが、FIFO やその他のシーク不可能なファイルでは違いはありません。

しかしただし、Linux のようなバグのあるインターフェースがありsendfile(2)、モードで開かれたファイルでは機能せずO_APPEND、そのモードが設定されているシーク不可能なファイルでも拒否されるため、常に 形式を使用することをお勧めします>

答え2

>宛先ファイルを上書きします

>>宛先ファイルに追加します

感謝ジョビンUbuntuに質問する45 件のいいねを獲得した権威ある回答です。

関連情報