中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-05 16:05
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 删除指定N天前的目录 查看 887 回复 7
楼 主 删除指定N天前的目录 发表于 2007-08-29 21:52 ·  中国 四川 成都 电信
初级用户
★★
积分 159
发帖 56
注册 2006-09-15 10:31
19年会员
UID 62663
状态 离线
这些目录下还有很多子目录文件等,都不考虑,只要这个目录的生成符合X天前的就全部删除,麻烦各位帮忙。
论坛中有解答的话 也麻烦给出连接
谢了
2 发表于 2007-08-29 23:14 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
自己都没先搜索,让别人帮你搜索?!

不如让别人帮你吃饭算了

自己搜索“N天前”
3 发表于 2007-08-29 23:42 ·  中国 四川 成都 电信
初级用户
★★
积分 159
发帖 56
注册 2006-09-15 10:31
19年会员
UID 62663
状态 离线
我搜索过的 不过关键词没用对 按照你的收到了一个脚本
@echo off
rem 删除三天前的文件夹
rem 目标目录为C:\test
set Target=C:\test
dir /b %Target%>%temp%\FolderList.txt
echo dt=date()-3>%temp%\OldDate.vbs
echo s=right(year(dt),4) ^& right("0" ^& month(dt),2) ^& right("0" ^& day(dt),2)>>%temp%\OldDate.vbs
echo wscript.echo s>>%temp%\OldDate.vbs
for /f %%f in ('cscript /nologo %temp%\OldDate.vbs') do @set DelFlag=%%f
for /f %%i in (%temp%\FolderList.txt) do (
if %%i lss %DelFlag% (
rd /s /q %Target%\%%i
)
)
del %temp%\FolderList.txt
del %temp%\OldDate.vbs

但测试后用不了 麻烦指正
4 发表于 2007-08-30 22:21 ·  中国 四川 成都 电信
初级用户
★★
积分 159
发帖 56
注册 2006-09-15 10:31
19年会员
UID 62663
状态 离线
没有人可以帮忙解答吗
5 发表于 2007-08-30 22:39 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
3楼的代码好像是我写的吧。
我记得当时测试通过了的。
有什么问题么?
6 发表于 2007-08-31 23:28 ·  中国 四川 成都 电信
初级用户
★★
积分 159
发帖 56
注册 2006-09-15 10:31
19年会员
UID 62663
状态 离线
太好了,麻烦问下这句话可以成立么
if %%i lss %DelFlag% (
7 发表于 2007-09-01 14:15 ·  中国 重庆 九龙坡区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
//太好了,麻烦问下这句话可以成立么 if %%i lss %DelFlag% (

想起来了,当时那个问题是文件夹以系统日期来命名。
你的问题,可以获取dir命令结果的第一列来判断文件夹的日期。
稍微修改一下代码就行了吧。
8 发表于 2007-09-02 22:27 ·  中国 四川 成都 电信
初级用户
★★
积分 159
发帖 56
注册 2006-09-15 10:31
19年会员
UID 62663
状态 离线
好的 明白你的意思了
论坛跳转: