繁体   English   中英

删除另一个目录中存在的较旧文件?

[英]delete older files who exist in another directory?

我有两个文件夹,它们的文件和文件夹几乎相同。

我要合并它们,并删除文件夹A中与文件夹B中相同的所有文件(相同日期或更旧)

有人已经问过这里 ,只是删除文件而不检查日期。

我想要类似的内容,但只有相同或以上的年龄才应删除。

谢谢

尝试这个:

@echo off&setlocal enabledelayedexpansion
pushd "%~dp0"


for /f %%i in ('dir /b a') do (call:CmpFTime LSS "a\%%~ni" "b\%%~ni"&&del "a\%%~ni")


:CmpFTime
SETLOCAL
set op=%~1
set fileL=%~2
set fileR=%~3
set attrL=%~4
set attrR=%~5
if "%op%"=="" set op===
if "%attrL%"=="" set attrL=/tw
if "%attrR%"=="" set attrR=%attrL%
for /f "tokens=1-6 delims=/: " %%a in ('"dir %attrL% /-c "%fileL%"|findstr "^^[0-1]""') do (
    set TL=%%c%%a%%b%%f%%d%%e
)
for /f "tokens=1-6 delims=/: " %%a in ('"dir %attrR% /-c "%fileR%"|findstr "^^[0-1]""') do (
    set TR=%%c%%a%%b%%f%%d%%e
)
if "%TL%" %op% "%TR%" (rem.) ELSE set=2>NUL
EXIT /b

如果其中包含任何错误,请随时发表评论,我会尽力解决它们。 我用a代替Foldera,用b代替Folderb。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM