只需一个命令,就可以删除电脑上最顽固的文件和文件夹

2021-03-03

有些文件夹和文件是无法用Windows资源管理器删除的,这些包括具有长路径、名称或保留名称的文件,如CON、AUX、COM1、COM2、COM3、COM4、LPT1、LPT2、LPT3、PRN、NUL等。即使你是管理员,当你尝试使用Windows资源管理器删除这些文件时,也会收到“拒绝访问”的错误消息,这时,只能使用命令行强制删除它们。

默认情况下,Windows 10内置了2个命令行界面:命令提示符和PowerShell,这两个都将用于从计算机删除不需要的内容。

一、如何使用命令提示符删除文件和文件夹

建议你使用具有管理特权的命令提示符,以免遇到任何可能的其他提示。

1.在cmd中执行Del/Erase命令

命令提示符中的Del和Erase命令是彼此的别名,无论你使用哪个命令,两者都执行相同的功能,可用于删除当前工作目录中的单个项目(文件)。请记住,它不能用于删除目录(文件夹)本身。

使用以下两个命令之一:

  • Del 文件/文件夹名称
  • Erase 文件/文件夹名称

将文件/文件夹名称替换为你要删除的项目的名称。

如果尝试从文件夹中删除项目(无论是否为空),系统将提示你进行确认操作,在这种情况下,你需要输入Y(是)和N(否)进行确认。如果选择是,则将直接删除文件夹中的项目,但目录(文件夹)将保留。但是,该文件夹内的子目录将完全不会更改。

为了删除文件夹及其子目录中的所有内容,你将需要在命令中添加/s选项即可。

2.cmd中的rmdir /rd命令

与Del和Erase相似,rmdir和rd也是彼此的别名,表示删除目录。这些命令用于删除整个目录和子目录,包括目录中的内容。

  1. rmdir“新文件夹” 

上面的命令只会在“新文件夹”为空的情况下将其删除。如果文件夹包含子目录,则可能会出现以下“目录不为空”的提示,在这种情况下,我们将需要应用/s选项来删除项目,就像我们之前使用Del命令所做的那样。

  1. rmdir /s“最终文件夹” 

当然,也可以使用/q选项执行此操作,这个命令会自动删除,不会提示你进行确认。

  1. rmdir / s / q“最终文件夹” 

3.删除多个文件和文件夹

到目前为止,我们已经完成了每个命令删除单个项目的任务。现在,让我们看看如何删除多个文件或文件夹。

对于文件:

  1. Del“ File1.txt”“ File3.txt”“ File5.txt” 

对于目录:

  1. rd“ Folder1”“ Folder3”“ Folder5” 

还可以使用带有文件类型或文件名的星号(*),通过Del命令执行文件的批量删除。但是,微软删除了对rmdir使用星号的支持,以便用户不会意外删除整个文件夹。

这是我们从当前工作目录中删除所有.txt文件的示例:

  1. Del“ * .txt” 

4.删除任何目录中的文件和文件夹

只需将要删除的项目的完整路径放在括弧中,即可将其删除,如以下示例所示:

  1. rmdir "d:\test1\test2 folder\folder2" 

5.检查文件或文件夹是否存在,然后使用IF命令删除

我们可以通过在命令提示符中键入Dir来查看工作目录的内容,但是,你可以在命令提示符中应用“if”条件以删除某项。方法如下:

  1. if exist File/FolderName (rmdir /s/q File/FolderName) 

将两个位置的File/FolderName替换为要删除的项目的名称(以及扩展名)。这是一个示例:

  1. if exist Desktop (rmdir /s/q Desktop) 

二、如何使用Windows PowerShell删除文件和文件夹

Windows PowerShell中用于从PC删除内容的命令与“命令提示符”的命令非常相似,并带有一些其他别名。总体功能和逻辑是相同的。

建议你在继续之前“以管理员身份运行”Windows PowerShell。

这里要注意的是,与命令提示符不同,所有命令都可以用于两个目的:删除单个文件以及完整的目录。因此在使用PowerShell删除文件和文件夹时要小心,因为目录本身也会被删除。

如果目录包含子目录,PowerShell将确认你是否要继续删除操作,该操作还将包括所有子对象。

以下是可在PowerShell中用于删除项目的所有命令/别名的列表:

  • Del
  • Rm-dir
  • remove-item
  • Erase
  • Rd
  • Ri
  • Rm

我们在工作目录中测试了所有这些命令,每个命令都成功删除了文件夹以及单个项目。

可以使用以下任何命令通过PowerShell删除项目:

  • Del File/FolderName
  • Rm-dir File/FolderName
  • remove-item File/FolderName
  • Erase File/FolderName
  • Rd File/FolderName
  • Ri File/FolderName
  • Rm File/FolderName

1.删除多个文件和文件夹

你还可以删除多个选中的文件和文件夹,就像我们在使用命令提示符时所做的那样。唯一的区别是,你需要提供每个项目的完整路径,即使在同一个工作目录中。像使用下面的命令:

  1. Del "DriveLetter:\Path\ItemName""DriveLetter:\Path\ItemName" 

如果项目不是目录(.txt、.png等),请记住要附加文件类型。

也可以使用星号(*)与文件类型或文件名连接,使用Del命令执行文件的批量删除,如在命令提示符中所做的那样。

2.删除任何目录中的文件和文件夹

你也可以像在命令提示符中一样在其他目录中删除项目。只需在PowerShell中输入该项目的完整路径即可,如下所示:

  1. Del "DriveLetter:\Path\ItemName""DriveLetter:\Path\ItemName" 

三、使用命令行删除路径复杂且较长的文件和文件夹

有时,你在尝试删除项目时可能会遇到错误,这可能是因为路径太长,或者由于项目被埋得太深而无法删除。下面是一个巧妙的技巧,你可以同时使用命令提示符和PowerShell来清空该文件夹,然后使用上述任何一种方法将其删除。

使用以下命令将一个文件夹(为空)的内容复制到无法删除的文件夹中。这还将使目标文件夹为空,从而使其可移动。

  1. robocopy "D:\EmptyFolder" D:\FolderToRemove /MIR 

在这种情况下,EmptyFolder是我们故意保留为空的源文件夹,以将其复制到目标文件夹“FolderToRemove”。

现在,你将看到以前不可移动的文件夹现在为空。你可以使用本文讨论的任何方法继续删除它。

总结

命令行是Windows用户的福音,你可以使用这些命令来删除计算机上最顽固的文件和文件夹。