修改批处理文件,使其不会删除目录下的所有文件

修改批处理文件,使其不会删除目录下的所有文件

我有以下批处理文件,用于删除路径和文件名存储在文件中的文件。它工作正常。我可以将要删除的文件的路径和文件名放在 DELETE-ALL.txt 中,批处理文件将删除它们。例如,如果文件中有一个条目 - “download\test.txt”,它将从多个驱动器中删除。

但是有一个问题。如果条目只是“download\”,而没有任何文件名,则“download\”下的所有文件(不包括文件夹)都将被删除。这当然不好。有没有办法修改批处理文件,使其忽略“\”后没有任何内容的条目(以“\”结尾的条目)?或者也许还有其他方法可以实现同样的效果?

@REM This script deletes files which include path.

@ECHO Working...
@if exist C:\DELETE-ALL-LOG.txt DEL /Q C:\DELETE-ALL-LOG.txt
@(@for /f "tokens=1 delims=;" %%A in ( C:\DELETE-ALL.txt) do @(

@DEL /Q /A "D:\%%A"
@DEL /Q /A "E:\%%A"
@DEL /Q /A "K:\%%A")   >> C:\DELETE-ALL-LOG.txt 2>&1)

@endlocal

@CD /D C:\
@echo Done. 

相关内容