中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-07 07:57
48,040 主题排行 / 350,125 发帖 / 今日 1 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » 請教 (二)....
可打印版本  646 / 1
第1楼 qoozen 发表于 2008-01-20 19:02
初级用户 发帖 7 积分 22
請教 (二)....
其實呢...之前我想實現一個腳本能判斷C:\每天有那些檔案是有更新過...
我是用Date去組合出一個數字..例如a.txt上次改動的時間是
20080120, 我就找今天的日子設定為20080120再減1,再判斷如果這個檔案的日子是大過或者等於今天20080120減1,這就代表a.txt有改動過(概念上就算是每月的1號減1也沒有問題,反正是求大過今天減1這個日子)...但問題是這個腳本不知道為什麼運行在一些很多子目錄的地方中就會很快死掉,CPU跟RAM也用了很多),想請教一下是正常的嗎?有沒有更好的寫法可以檢查到有改動的檔案資料?

@Echo off
:A
pushd "C:\PHP"
for /r %%i in (*.*) do call :B "%%i"
start ccc.txt
pause & goto :eof

:B
cls
Echo ----------------
Echo Scanning...
Echo ----------------
Echo File Path:%~pnx1
Echo.
Echo File Date:%~t1
Set ft=%~t1
Set fn=%ft:~6,4%%ft:~0,2%%ft:~3,2%
Set ct=%date:~6,4%%date:~0,2%%date:~3,2%
Set /A dd=%ct%-1
if %fn% geq %dd% echo %~t1 %~pnx1>>ccc.txt
goto :eof

[ Last edited by qoozen on 2008-1-20 at 07:11 PM ]
第2楼 zcnvnv 发表于 2008-01-20 19:27
初级用户 发帖 36 积分 114
建议你改一下标题,衷心地祝福您!
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023