我试图使用批处理文件将文件从一个驱动器复制到另一个驱动器,这有效!但我们一直在主文件上更改文件名,每次运行时都会创建具有不同名称的附加副本。我不想完全删除复制文件,因为副本只需要复制的时间长度。我想比较2个文件并删除不再在主驱动器上的文件,这是我正在进行的测试。感谢你给与我的帮助。
@echo
cls
If not exist "C:\Users\Jeremy\Desktop\Test Main\*.*" "Del "C:\Users\Jeremy\Desktop\Test Clone\*.*"
xcopy "C:\Users\Jeremy\Desktop\Test Main\*.*" "C:\Users\Jeremy\Desktop\Test Clone\*.*" /D /C /E /S /I /Y /V /H /R /F /d:01-01-1998
pause
:abort
echo You pressed CTRL+C to end the copy operation.
goto exit
答案 0 :(得分:0)
您可能希望查看robocopy
,特别是/mir
开关,它将源文件夹镜像(复制所有新文件并删除所有不再存在的文件)到目标。
答案 1 :(得分:0)
由于 这确实有效
@echo
cls
robocopy /MIR "C:\Users\Jeremy\Desktop\Test Main" "C:\Users\Jeremy\Desktop\Test Clone"
pause
:abort
echo You pressed CTRL+C to end the copy operation.
goto exit
但我仍然想知道是否有人能够或想要花时间纠正我原来的问题
答案 2 :(得分:0)
尝试:
@echo off
cls
If not exist "C:\Users\Jeremy\Desktop\Test Main\*.*" "Del "C:\Users\Jeremy\Desktop\Test Clone\*.*"
xcopy "C:\Users\Jeremy\Desktop\Test Main\*.*" "C:\Users\Jeremy\Desktop\Test Clone\*.*" /D /C /E /S /I /Y /V /H /R /F /d:01-01-1998
If %errorlevel% EQU 2 (
echo You pressed CTRL+C to end the copy operation.
)
pause