我在~/Documents
文件夹中有两个文件text1
和text2
。当我输入命令ls >listing
,然后查看listing
文件的内容,我可以看到
listing
text1
text2
你能从技术上解释为什么包含listing
吗?我认为它需要ls
命令的输出,该命令只有2行,然后创建listing
文件并将这2行放在那里。但显然不是。
shell在解析命令行后立即创建'listing';它必须调用open(2)
来获取一个文件描述符,以便传递给ls
的分支进程。因此,在ls
开始时,它已经在那里了。