红帽6
>>
和运算符之间有区别吗>\>
?我在一本 RHEL 培训书中读到了以下简介:
“您可以使用双重定向箭头将标准输出添加到现有文件的末尾,例如
ls >\> filelist
我更习惯>>
操作符,当我尝试两者时,我得到不同的结果。
- 使用
>>
似乎将输出附加到其后面的文件(如预期的那样)。 - 使用
>\>
似乎将输出附加到一个字面上称为的文件>
这是我正在读的书中的错误吗?还是我没理解作者的意思?
答案1
要将文本附加到您使用的文件中>>
。要覆盖该文件中当前的数据,您可以使用>
.一般来说,在 bash 和其他 shell 中,您可以使用 转义特殊字符\
。
因此,当您使用时,echo foo >\>
您所说的是“重定向到名为 的文件>
”,但这是因为您正在逃避第二个>
。它相当于使用echo foo > \>
与 相同的echo foo > '>'
。
所以,是的,正如 Sirex 所说,这可能是你书中的一个拼写错误。
答案2
看起来像一个错字。 ………………