我有以下情况
Folder 1
-Folder a
-File1.txt
-Img1.png
-Folder b
-File2.txt
-Img2.png
Folder 2
-Folder a
-File1.txt (File 1 modified)
-Img1.png (No change)
-Folder b
-File3.txt (New file added)
-Img2.png (no change)
基本上我希望输出文件夹包含以下文件(在原始结构中修改或添加,并保留结构)
OutputFolder
-Folder a
-File1.txt
-Folder b
-File3.txt
我正在尝试使用Beyond Compare命令行来执行此操作,但我无法找到任何适合的参数,我不想手动更改所有文件(太多文件)以进行更改或使用SVN。我可以使用任何其他工具/脚本来实现这一目标吗?
答案 0 :(得分:1)
如果更改仅在“文件夹2” - 结构中,文件夹1将始终未被取消,我可以使用它:
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
FOR /F "TOKENS=2,* DELIMS= " %%A IN ('ROBOCOPY "Folder 2" "Folder 1" /MIR /XX /NDL /NJH /NJS /L') DO (
SET tmpFolder=%%~dpB
SET tmpFolder=!tmpFolder:Folder 2=OutputFolder!
XCOPY "%%~B" "!tmpFolder!" /E /F /H /R /C
)
ENDLOCAL
Robocopy只会列出文件夹2和文件夹1之间的更改, for循环将文件复制到“outputfolder”,保留文件夹结构