如何logging在batch file中删除多less数据

我有以下batch file

@echo off Del *.tmp /s /Q Del *.temp /s /Q Del Thumbs.db /s /Q pause 

我需要它以下面的格式logging它已经删除了多less数据

数据量有多less(KB)

它删除了多less个文件

有人知道我可以使用的代码吗?

尝试这个:

 @echo off setLocal enableDelayedExpansion set filePattern=*.temp set totalSize=0 for /F "tokens=* usebackq" %%a IN (`dir /b ^| findstr /R .!filePattern!$`) DO ( set size=%%~za set /a totalSize=!totalSize! + !size! ) del !filePattern! /s /Q set /a totalSize=!totalSize! / 1024 echo Total size deleted (!filePattern!): !totalSize! KB pause 

您可能必须更改!filePattern! 据此根据你想要删除的文件。 除此之外,您可能必须将此批处理脚本放在与要删除的文件相同的目录中。

 @echo info about deleted files: @for /f "delims=" %%a in ('dir /s /-c /as *.tmp^| findstr /i "File(s) Directory"') do ( @echo %%a ) @del *.tmp /s /Q