![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-26 17:32 |
共 47,813 主题排行 / 349,918 发帖 / 今日 0 篇 / 48,276 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 求助:批处理中如何检查某一文件是否更新 |
| 可打印版本 945 / 4 |
| 第1楼 hq413 | 发表于 2007-06-07 00:10 |
| 新手上路 发帖 3 积分 8 | |
|
求助:批处理中如何检查某一文件是否更新 如何在批处理中检查文件abc.doc的文件大小和修改时间是否改变?
abc.doc原来的文件大小和修改时间已保存在文件1.txt中,1.txt中的内容是由命令"dir abc.doc >1.txt"输出得到的. |
|
| 第2楼 HAT | 发表于 2007-06-07 12:47 |
| 版主 发帖 5,017 积分 9,023 | |
|
建议使用这段代码替换"dir abc.doc >1.txt"来得到abc.doc原来的文件大小和修改时间,这样方便后面的处理:
然后使用这段代码即可作出判断: |
|
| 第3楼 hq413 | 发表于 2007-06-07 12:56 |
| 新手上路 发帖 3 积分 8 | |
|
谢谢。
|
|
| 第4楼 yywd | 发表于 2007-12-29 09:27 |
| 中级用户 发帖 130 积分 358 | |
|
@echo off
set FileName=abc.doc for /f "tokens=1,2,3,4 delims= " %%a in (1.txt) do ( set OldTime=%%a %%b %%c set OldSize=%%d ) for %%i in (abc.doc) do ( set CurrTime=%%~ti set CurrSize=%%~zi ) if "%OldTime%" equ "%CurrTime%" ( echo 修改时间未改变 ) else ( echo 修改时间已改变 ) if %OldSize% equ %CurrSize% ( echo 文件大小未改变 ) else ( echo 文件大小已改变 ) 好象不能用呀, 改一下吧 |
|
| 第5楼 HAT | 发表于 2007-12-29 14:54 |
| 版主 发帖 5,017 积分 9,023 | |
|
//好象不能用呀, 改一下吧
给点详细信息行么? |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |