批处理文件,删除早于该文件的文件;文件名中带有xxxx *的文件除外

时间:2018-12-12 20:12:36

标签: batch-file

我制作了一个批处理文件,将文件名中具有xxxx *的/ MOVE文件自动复制到temp文件夹,然后使用forfiles的第二个命令删除原始目录中早于-xx天的任何文件,然后使用robocopy / move将所有其他文件移回原始目录。有没有一种方法可以运行forfiles命令从原始目录中删除所有早于-xx天的文件(名称中带有xxxx *的文件除外),而无需来回移动文件?

我的原始代码是:

forfiles -p "%USERPROFILE%\Documents\Media\TV" -s -m . -d -45 -c "cmd /c del @path"

1 个答案:

答案 0 :(得分:2)

这是使用FORFILES的一个选项,并附加了FORFINDSTR命令的帮助。但是我相信,如果您愿意,您可以使用ROBOCOPY来完成所有这一切。

FORFILES /S /D -45 /C "cmd /q /c FOR /F %%G IN (@file) do echo %%~G|findstr /v /b xxxx >nul && del @path"