与命名管道一起使用时 > 和 >> 之间的区别

与命名管道一起使用时 > 和 >> 之间的区别

下面代码中的两个重定向有什么区别吗?

mkfifo foo
echo > foo  
echo >> foo

答案1

那里应该没有什么区别。将>>使用该标志打开 fifo O_APPEND,这对 fifo 或其他不可查找的文件不会产生任何影响。

然而,存在像sendfile(2)Linux 中那样的有缺陷的界面,它们不适用于在O_APPEND模式下打开的文件,甚至会反对设置该模式的不可查找文件,因此您最好始终使用该>表单。

答案2

>覆盖目标文件

>>附加到目标文件

谢谢乔宾询问Ubuntu获得45个赞的权威答案。

相关内容