在 Windows 下,如果我创建一个文件并删除它,然后在相同位置重新创建该文件的精确副本并将其删除,那么回收站中就会有 2 个名称相同的文件。系统如何知道哪个是哪个?怎么会有两个名称相同的文件?回收站不也是一种文件夹吗?当我们在其他操作系统上执行此方法时,它们是否也会发生同样的情况?
答案1
回收站不是一个“普通”文件夹,因此不必遵守常规文件夹中的相同规则。
当您删除文件时,文件系统中该文件的条目将被标记为已删除。文件本身(或者更准确地说,文件中包含的数据)仍保留在原处。然后,Windows 会将一个新条目放入文件系统中,并使用新的文件名。此条目将引用文件系统中原始文件所在的相同位置。此外,它还将保留对原始已删除文件的引用。
如果我们看一下实际的回收站文件夹的内容,我们看到:
C:\$Recycle.Bin>dir /a
Volume in drive C is System
Volume Serial Number is 7461-FCF4
Directory of C:\$Recycle.Bin
2013-01-30 16:53 <DIR> .
2013-01-30 16:53 <DIR> ..
2013-01-30 16:53 <DIR> S-1-5-20
2011-11-29 15:28 <DIR> S-1-5-21-2370250818-2711005194-4184312249-1165
2013-04-30 14:36 <DIR> S-1-5-21-395480114-2448312134-3943194674-1000
0 File(s) 0 bytes
5 Dir(s) 74,019,328,000 bytes free
这将显示从我的C:
驱动器中删除的文件夹。如果我查看其中一个文件夹,我可以看到已删除的文件及其新名称:
C:\$Recycle.Bin>dir S-1-5-21-2370250818-2711005194-4184312249-1165
Volume in drive C is System
Volume Serial Number is 7461-FCF4
Directory of C:\$Recycle.Bin\S-1-5-21-2370250818-2711005194-4184312249-1165
2011-11-29 15:04 544 $I8CQG1I.old
2011-11-29 15:04 544 $IB7OVE3.attr
2011-11-29 15:28 544 $ICLKJI9.csr
2011-11-29 15:28 544 $IJS204F.csr
2011-11-29 15:04 544 $IMBRKUS.old
2011-11-29 15:04 544 $IURO2ZD.old
2011-11-29 15:04 544 $IV2TEJ7.pem
2011-11-29 15:04 544 $IWDACDF.pem
2011-11-29 14:37 21 $R8CQG1I.old
2011-11-29 14:41 21 $RB7OVE3.attr
2011-11-29 14:35 538 $RCLKJI9.csr
2011-11-29 15:11 364 $RJS204F.csr
2011-11-29 14:37 37 $RMBRKUS.old
2011-11-29 14:37 3 $RURO2ZD.old
2011-11-29 14:41 2,613 $RV2TEJ7.pem
2011-11-29 14:37 2,973 $RWDACDF.pem
16 File(s) 10,922 bytes
0 Dir(s) 73,465,004,032 bytes free
所以,您看,回收站中已删除的 2 个文件是 2 个彼此不冲突的唯一实例(尽管如果您尝试同时恢复这两个文件,则会发生冲突)。