中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 都进来看看吧!批处理文件对比相关请教!
作者:
标题: 都进来看看吧!批处理文件对比相关请教! 上一主题 | 下一主题
liuwushu
初级用户





积分 93
发帖 35
注册 2006-12-20
状态 离线
『楼 主』:  都进来看看吧!批处理文件对比相关请教!

问个关于批处理的问题,怎样用批处理实现 文件夹1 对比 文件夹2,删除 文件夹1 多余文件。
万分感谢赐教!

2006-12-20 11:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
a9319751
中级用户





积分 439
发帖 170
注册 2006-1-9
状态 离线
『第 2 楼』:  

@echo off && setlocal enabledelayedexpansion
::主要用于全盘远程对比更新:::::::::::::
::如果本地测试请自行修改:::::::::::::::
::本地对比更新已通过测试:::::::::::::::
::远程对比更新未测试:::::::::::::::::::
::此代码效率不高,只为演示:::::::::::::
:: code by zzlike 2006-12-11 CMD@XP::::
:::::::::::::::::::::::::::::::::::::::
::******配置文件开始*****************::
::::::::源目录:::::::::::::::::::::::::
set sd=\\192.168.0.14\d\
::::::::目标盘:::::::::::::::::::::::::
set dd=d:\
::******配置文件结束*****************::
::::::::映射网络路径:::::::::::::::::::
net use x: %sd%
::::::::生成文件列表:::::::::::::::::::
echo. > sd.txt
echo. > dd.txt
for /r "x:\" %%i in (*) do echo %%~pnxi >> sd.txt
for /r "%dd%" %%i in (*) do echo %%~pnxi >> dd.txt
::::::::对比文件列表并删除多余文件:::::
for /f "tokens=*" %%i in (dd.txt) do (
    find "%%i" sd.txt || del /a /f /q "%dd%%%i"
)
::::::::删除空文件夹:::::::::::::::::::
set num=0
for /f "delims=" %%i in ('dir /ad /b /s "%dd%"') do (
    for /f %%j in ('dir /a "%%i"') do set /a num+=1
    if !num! lss 8 attrib -s -h -r -a  "%%i" && rd /s /q "%%i"
    set num=0
)
::::::::更新文件:::::::::::::::::::::::
xcopy /d /e /i /y /c /q /h /r /k "x:\*" "%dd%*"
::::::::清理临时文件并断开网络路径:::::
net use x: /delete  /y
del /a /f /q sd.txt
del /a /f /q dd.txt



bat c c++
2006-12-20 23:07
查看资料  发送邮件  发短消息 网志  OICQ (5040366)  编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 3 楼』:  

好象不需要生成临时文件就可以

2006-12-21 09:46
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
liuwushu
初级用户





积分 93
发帖 35
注册 2006-12-20
状态 离线
『第 4 楼』:  

谢谢

2006-12-21 15:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
liuwushu
初级用户





积分 93
发帖 35
注册 2006-12-20
状态 离线
『第 5 楼』:  

谢谢

2006-12-21 15:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: