FORFILES 不删除子目录中的文件

FORFILES 不删除子目录中的文件

以下是我的forfiles一句话:

FORFILES /P "X:\LOGS\HS" /S /M *.log  /D -1 /C "CMD /C del /Q @FILE"qq ~q

尽管我可以/S选择删除 中的日志文件X:\LOGS\HS,但其中有多个子目录,并且无法删除树下更下方的日志文件。我该如何解决这个问题?

答案1

我会把它归结为文件/路径名中的空格

什么时候

FORFILES /P "X:\LOGS\HS" /S /M *.log  /D -1 /C "CMD /C del /Q @FILE"qq ~q

遇到 X:\LOGS\HS\My Folder\Stuff.log,它会将其传递给del命令

删除 X:\LOGS\HS\我的文件夹\Stuff.log

然后 del 会尝试删除文件X:\LOGS\HS\MyFolder\Stuff.log

为了解决这个问题,您必须给系统一些引号来包裹文件名。

FORFILES /P "X:\LOGS\HS" /S /M *.log  /D -1 /C "CMD /C del /Q ""@FILE"""qq ~q

应该给你带来更多成功

相关内容