回收站如何容纳多个同名文件?

tot*_*dli 3 windows filesystems recycle-bin

在 Windows 下,如果我创建一个文件并删除它,那么在同一位置重新创建该文件的确切副本并将其删除,那么我将在回收站中拥有 2 个相同名称的相同文件。系统在哪里知道哪个是哪个?怎么会有两个同名的文件?回收站不也是一种文件夹吗?我们对其他操作系统执行这种方法时,其他操作系统是否也会这样做?

回收站中有2个同名文件

Der*_*ler 9

回收站不是“普通”文件夹,因此不必遵守您从常规文件夹中了解的相同规则。

删除文件时,文件系统中该文件的条目将标记为已删除。文件本身(或更准确地说,文件中包含的数据)保持原样。然后,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
Run Code Online (Sandbox Code Playgroud)

这会显示从我的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
Run Code Online (Sandbox Code Playgroud)

因此,您会看到,回收站中的 2 个已删除文件是 2 个彼此不冲突的独特实例(但是,如果您尝试同时还原这两个文件,则会发生冲突)。