中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-09 22:38
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 按时间删除文件 查看 1,469 回复 10
楼 主 按时间删除文件 发表于 2008-09-24 19:43 ·  中国 广东 电信
新手上路
积分 8
发帖 3
注册 2008-09-24 17:28
17年会员
UID 126513
性别 男
状态 离线
我在日常的系统维护中,常常需要删除文件,有时需要按创建日期删除文件,

我的做法是在"资源管理器"中,先按日期排序.然后选中删除.


批处理的做法目前没成功

不过我用另一个变通的方法,XCOPY /D:日期 到临时文件夹,然后RD /S /Q

请高手给我个指点.

主要是在命令行下,不知道用什么命令查看文件创建日期.
2 发表于 2008-09-24 20:16 ·  中国 新疆 石河子 电信
初级用户
积分 50
发帖 25
注册 2007-03-29 14:07
19年会员
UID 83301
性别 男
状态 离线
dir 不就有文件的日期,把输出用 for 语句处理一下就能知道日期了。
3 发表于 2008-09-24 20:47 ·  中国 北京 科技网
初级用户
积分 27
发帖 12
注册 2008-08-22 17:48
17年会员
UID 123887
性别 男
状态 离线
date /t就可用查询日期
这个命令被单引号括起来还可以当作for循环/f参数情况下的定义集

@echo off
for /f "tokens=1,2,3 delims=- " %%a IN ('date /t') do @echo %%a%%b%%c & set YMD=%%a%%b%%c
mkdir %YMD%

这段批处理代码就可以自动按当前的日期建立以日期为名的文件夹
4 发表于 2008-09-25 15:20 ·  中国 江苏 苏州 电信
新手上路
积分 8
发帖 3
注册 2008-09-24 17:28
17年会员
UID 126513
性别 男
状态 离线
我想按文件创建的日期删除文件.注意是文件的"创建日期"而不是访问日期或修改日期.
5 发表于 2008-09-25 15:35 ·  中国 广东 广州 电信
银牌会员
★★★
永远的菜鸟
积分 1,335
发帖 574
注册 2007-11-27 12:50
18年会员
UID 103929
性别 男
来自 广西
状态 离线
dir /od/tc/a-d "*.*"
6 发表于 2008-09-25 18:38 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
我试着写了下,碰到了很多难题...哪位写一下啊,学习一下
7 发表于 2008-09-25 19:02 ·  中国 四川 成都 电信
中级用户
★★
积分 297
发帖 135
注册 2006-10-21 12:00
19年会员
UID 67627
性别 男
状态 离线
建议用vbs,vbs的时间日期函数又多又方便

bat稍微有点麻烦的是对时间和日期的判断,不记得是moniuming还是terse兄,在verybat写过bat版的,楼主如有需要可以去找找看
8 发表于 2008-09-25 20:34 ·  中国 重庆 九龙坡区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
@echo off
set file=C:\test\a.txt
for /f "skip=5" %%a in ('dir /tc "%file%"') do (
set CrtDay=%%a
goto :show
)
:show
echo 文件%file%的创建日期:%CrtDay%
9 发表于 2008-09-25 22:16 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
以下是提示符下的“截图”:

D:\>for /f "tokens=*" %a in ('dir /a:d ^| find "2008-09-25"') do @echo %a
2008-09-25 16:32 <DIR> 1 3 3 4

请问如何只显示 1 3 3 4
10 发表于 2008-09-25 22:25 ·  中国 广西 百色 中移铁通
银牌会员
★★★
永远的菜鸟
积分 1,335
发帖 574
注册 2007-11-27 12:50
18年会员
UID 103929
性别 男
来自 广西
状态 离线
for /f "tokens=3*" %a in ('dir /a:d ^| find "2008-09-25"') do @echo %b
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
tireless +1 2008-09-25 22:41
11 发表于 2008-09-27 10:29 ·  中国 江苏 苏州 电信
新手上路
积分 8
发帖 3
注册 2008-09-24 17:28
17年会员
UID 126513
性别 男
状态 离线
TO :HAT版主

感谢版主的热情代码,接近我要的要求.
论坛跳转: