中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-10 02:36
47,811 主题排行 / 349,897 发帖 / 今日 2 篇 / 48,255 会员排行
DOS批处理 & 脚本技术(批处理室) » [已结]自动删除相隔第14天的文件夹
可打印版本  837 / 13
第1楼 yuwancumian 发表于 2008-10-14 15:00
初级用户 发帖 9 积分 20
[已结]自动删除相隔第14天的文件夹
比如服务器上现已有2008-10-12和2008-10-19两个文件夹,下周2008-10-26这天会自动在创建一个2008-10-26的文件夹,所以我想在创建2008-10-26文件夹之前先自动的删除前两周前创建的2008-10-12这个文件夹,依次类推,每过7天后又会创建一个以当天日期的文件夹,在创建之前要先删除上两周的那个时间文件夹

[ Last edited by HAT on 2008-10-14 at 16:06 ]
第2楼 tireless 发表于 2008-10-14 15:08
银牌会员 发帖 1,122 积分 2,025
2008-10-13 这样的文件夹有没有很多个?如果只有一个,那在创建文件夹前,执行 rd /s /q 2008* 就可以了吧
第3楼 yuwancumian 发表于 2008-10-14 15:12
初级用户 发帖 9 积分 20
有两个的
第4楼 yuwancumian 发表于 2008-10-14 15:13
初级用户 发帖 9 积分 20
rd /s /q 2008*这样把我的另外一个文件夹也删除了啊
第5楼 yuwancumian 发表于 2008-10-14 15:20
初级用户 发帖 9 积分 20
不好意思重新编辑了一下内容,各位高手可能看的更清楚一点
第6楼 pusofalse 发表于 2008-10-14 15:21
银牌会员 发帖 646 积分 1,604

http://www.vkill.net/tools/DateX_2.5.rar
第7楼 tireless 发表于 2008-10-14 15:31
银牌会员 发帖 1,122 积分 2,025
@echo off
for /f "delims=" %%a in ('dir /a:d /t:c /b "c:\2008-*"') do echo rd /s /q "%%a" & exit /b

先运行这个批处理,看被删除的文件夹名称是否正确。没错的话,将 echo 删除。
(c:\ 是文件夹所在目录。如果批处理与文件夹在同一个目录,则不需要 c:\)

[ Last edited by tireless on 2008-10-14 at 16:07 ]
第8楼 yuwancumian 发表于 2008-10-14 15:42
初级用户 发帖 9 积分 20
不好意思,我是菜鸟,将哪个 echo去掉啊,我不知道怎么写
第9楼 HAT 发表于 2008-10-14 15:44
版主 发帖 5,017 积分 9,023
来个保险一点的:

注:为了更保险,把判断条件从leq改成equ了。

[ Last edited by HAT on 2008-10-14 at 15:57 ]
第10楼 yuwancumian 发表于 2008-10-14 15:50
初级用户 发帖 9 积分 20
版主,很感谢你,测试了一下还是不行的,删除不掉前14天的那个文件夹,set SrcDir=C:\test 的test是什么意思啊
第11楼 HAT 发表于 2008-10-14 15:56
版主 发帖 5,017 积分 9,023
Re 10楼
假设你的2008-10-12和2008-10-19之类的文件夹都在C:\test里面
第12楼 yuwancumian 发表于 2008-10-14 16:01
初级用户 发帖 9 积分 20
这个不受年份的限制吧
第13楼 yuwancumian 发表于 2008-10-14 16:03
初级用户 发帖 9 积分 20
谢谢版主,解决了,太谢谢你了
第14楼 HAT 发表于 2008-10-14 16:06
版主 发帖 5,017 积分 9,023
Re 12楼
从理论上来说,年份到达9999年以后,我也不知道接下来会发生什么事情。但是在我们有生之年,这个代码是不会受年份限制的。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023