如何在 Windows 上删除名为“NUL”的文件?

Gre*_*tes 62 windows ntfs filesystems windows-xp

我有一个 Windows XP 盒子(NTFS 文件系统),在上面我发现了一个名为NUL. 我无法以任何常规方式删除此文件。该文件似乎是由拥有AdministratorSYSTEM组,不像在同一目录下的任何其他文件(其他文件由我的用户ID所拥有)。

我如何摆脱这个文件?它从哪里来的?

use*_*686 99

尝试

Del \\?\C:\My\Path\NUL
Run Code Online (Sandbox Code Playgroud)

在命令提示符中。

有关详细信息,请参阅此 Microsoft 支持文章:您无法删除 NTFS 文件系统卷上的文件或文件夹,位于“原因 5:文件名包括 Win32 命名空间中的保留名称”下。

  • 作为上述解决方案的替代方案,如果您的工作目录已经是包含 `nul` 文件的目录,您可以:`del "\\?\%CD%\nul"` 将 `%CD%` 部分扩展为工作目录和双引号 (`"`) 使它也处理带有“奇数”符号的路径名,例如 `"\\?\C:\path,with\comma\nul"`。 (5认同)

fik*_*tor 14

或者,如果您安装了Cygwin,您可能想知道此类文件或文件夹没有问题。特别,

rm -r /cygdrive/c/path/to/the/file/or/folder/you/want/to/delete
Run Code Online (Sandbox Code Playgroud)

在 Cygwin 终端中键入会删除nul包含它的文件或文件夹或文件夹。这也适用于其他专业的文件名,例如CONPRNAUXCOM1COM2COM3COM4COM5COM6COM7COM8COM9LPT1LPT2LPT3LPT4LPT5LPT6LPT7LPT8

  • 也适用于 git bash (3认同)

小智 10

我在这里添加这个是因为它在谷歌结果中很高,而且我在一个名为 NUL的文件夹中遇到了类似的问题。不幸的是,上述修复没有帮助。我看了很多其他的东西也没有。

我想rmdir\\?\C:\My\Path\NULrmdir\\.\C:\My\Path\NUL没有任何成功,并且还使用bash从我SourceTree安装试了几个命令。没有喜悦。

最后我用DIR /X /Afrom cmd 列出了父目录中的短名称。这NUL~1为我的 NUL 文件夹返回。

然后在标准命令中使用它rmdir /s NUL~1并最终解决了问题。

  • 嗯,使用短名称绕过特殊名称非常聪明。 (2认同)

小智 6

如果您安装了适用于 Windows 的 Git,请执行以下操作

  1. 打开包含要删除的文件的目录
  2. 左键单击并选择Git Bash Here
  3. rm nul.json在命令提示符下键入并按 Enter 键,现在应该删除该文件。

在这里运行 Git Bash

注意:这些屏幕截图显示了文件的删除nul.topo.json,这是我无法通过简单删除删除的另一个文件。

命令执行后