Windows DEL 命令中的强制详细模式

Ynh*_*key 1 windows command-line cmd.exe

我有时会使用 Windows 命令行和DEL命令删除多台计算机上的大量文件,并且在某些功能上是冗长的(即输出它删除的文件),而在其他情况下并非如此。有没有办法强制命令行实用程序始终显示其进度?

小智 5

无论是删除擦除,除非你包括命令会沉默/ S参数删除所有子目录中的所有文件。

一种选择是简单地逐个删除文件。假设您要删除临时文件夹中的所有内容:

for /f "tokens=*" %A in ('dir /s /b "%TEMP%"') do del /Q "%A"
Run Code Online (Sandbox Code Playgroud)

启动 200 万个文件需要一段时间,因为它需要先列出它们,然后将它们一一删除。

 

另一种选择是使用Robocopy并让它镜像一个空目录以删除您想要的文件。当每个文件被删除时,您将获得详细的输出。从一个空目录 (c:\empty) 开始并运行类似于以下内容的内容:

robocopy c:\empty c:\dir_with_files_to_be_deleted *files_you_want_to_delete.* /mir /v
Run Code Online (Sandbox Code Playgroud)

或者,如果您只想删除单个目录中的所有文件:

robocopy c:\empty c:\dir_to_empty /mir /v
Run Code Online (Sandbox Code Playgroud)