任何人都可以使用单个>
来帮助执行此命令所做的事情,当我执行ls > list
时,它会创建一个新文件,但是当我ls >> list
时我什么也看不到/ p>
答案 0 :(得分:2)
如前所述,>
会在>>
追加时覆盖。
现在对于您的查询,
您首先执行了ls > list
,创建了一个名为list的文件。
然后,您执行了ls >> list
,它将ls
命令的结果附加到您现有的文件中。只有在打开文件时才能看到更改。
请尝试以下操作:
删除现有的列表文件:rm -f list
执行ls >> list
,这将创建文件列表。
执行ls > list
,这将覆盖文件列表的内容。
<强>记住:强>
如果文件不存在, > and >>
将创建该文件。
现有文件上>
的后续执行将覆盖该文件,而>>
的文件会将输出附加到文件中。
在任何情况下,只有在> or >>
操作后打开文件时,您才能看到更改。
答案 1 :(得分:0)
>
用于将标准输出重定向到文件。 (command > output file
)
如果文件存在,它将替换它。如果您想要追加,请改用>>
。
因此,如果您执行ls > file
,那么file
将对目录中的文件( id est 输出ls
命令)进行内容化处理