![为什么 Windows XP(在重命名操作期间)会报告文件已存在但实际上并不存在?](https://linux22.com/image/533826/%E4%B8%BA%E4%BB%80%E4%B9%88%20Windows%20XP%EF%BC%88%E5%9C%A8%E9%87%8D%E5%91%BD%E5%90%8D%E6%93%8D%E4%BD%9C%E6%9C%9F%E9%97%B4%EF%BC%89%E4%BC%9A%E6%8A%A5%E5%91%8A%E6%96%87%E4%BB%B6%E5%B7%B2%E5%AD%98%E5%9C%A8%E4%BD%86%E5%AE%9E%E9%99%85%E4%B8%8A%E5%B9%B6%E4%B8%8D%E5%AD%98%E5%9C%A8%EF%BC%9F.png)
从命令行:
E:\menu\html\tom\val\.svn\tmp\text-base>ver
Microsoft Windows [Version 5.2.3790]
E:\menu\html\tom\val\.svn\tmp\text-base>dir
Volume in drive E is DATA
Volume Serial Number is F047-F44B
Directory of E:\menu\html\tom\val\.svn\tmp\text-base
12/23/2010 04:36 PM <DIR> .
12/23/2010 04:36 PM <DIR> ..
12/23/2010 04:01 PM 0 wtf.com3.csv.svn-base
1 File(s) 0 bytes
2 Dir(s) 170,780,262,400 bytes free
E:\menu\html\tom\val\.svn\tmp\text-base>rename wtf.com3.csv.svn-base com3.csv.svn-base
A duplicate file name exists, or the file
cannot be found.
E:\menu\html\tom\val\.svn\tmp\text-base>dir
Volume in drive E is DATA
Volume Serial Number is F047-F44B
Directory of E:\menu\html\tom\val\.svn\tmp\text-base
12/23/2010 04:36 PM <DIR> .
12/23/2010 04:36 PM <DIR> ..
12/23/2010 04:01 PM 0 wtf.com3.csv.svn-base
1 File(s) 0 bytes
2 Dir(s) 170,753,064,960 bytes free
E:\menu\html\tom\val\.svn\tmp\text-base>
E:\menu\html\tom\val\.svn\tmp\text-base>dir /ah
Volume in drive E is DATA
Volume Serial Number is F047-F44B
Directory of E:\websvn_menu\html\tom\val\.svn\tmp\text-base
File Not Found
我不知道该怎么办,因为此目录中没有其他文件。为什么 Windows XP 会报告此处已有一个文件,而com3.csv.svn-base
此处显然没有其他文件?
更新:这种情况发生在我的工作机器 WinXP 64 位上。但它也在我的家用机器 WinXP 32 位上失败了。然而,在 Linux 中,它工作正常。也许这是 NTFS 文件系统错误?
答案1
叮叮叮。
Windows 和 DOS 将设备名称保留为存在于每个目录中的文件名。COM3 就是其中之一。您可能熟悉 NUL、LPT1、CON(如COPY CON
)等。您的问题是您试图将其重命名为 COM3.anything.anything。Windows 仍然具有一些 DOS 时代的向后兼容性,不允许您以破坏这一点的方式命名文件。
维基百科告诉我您应该能够使用长 UNC\\mycomputer\E$\menu\html\tom\val\.svn\tmp\text-base\com3.csv.svn-base
作为重命名目标。
答案2
目录中是否有隐藏文件?尝试“dir /ah”显示所有隐藏文件。如果没有隐藏文件,请运行“chkdsk /fe:”检查文件系统问题(这可能需要重新启动)。如果这不能解决问题,则可能是硬盘驱动器上有坏扇区。运行“chkdsk /re:”检查坏扇区。