检查2个目录中是否存在文件,删除不在两个目录中的文件

时间:2016-07-12 14:20:13

标签: batch-file

所以,我正在编写游戏,但我使用的编译器是作为Windows批处理文件编写的。我使用Windows 10作为我的操作系统。 在我的游戏文件中,我有一个包含图像的文件夹,另一个文件夹包含具有相同文件名和扩展名的那些图像的放大版本。 我想要做的是让批处理文件通过放大的图像遍历目录中的所有图像,并检查具有原始图像的目录中是否存在具有相同名称和扩展名的文件。如果它在原始目录中不存在,它将从升级目录中删除它。

1 个答案:

答案 0 :(得分:0)

我在这里使用答案了解它: Batch Extract path and filename from a variable

我所要做的就是提取文件名和扩展名,然后通过循环运行一个文件夹中的所有文件,检查文件是否存在于另一个文件夹中。

这是我的代码:

for %%i in (%folder1%\*.png) DO (
if not exist "%folder2%\%%~nxi" ECHO %%~nxi
)

如果您确实要删除文件,请将ECHO更改为del /q,请注意您将丢失文件,因此请确保备份。