中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-07 15:36
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]如何根据文件的日期进行删除操作? 查看 865 回复 13
楼 主 [求助]如何根据文件的日期进行删除操作? 发表于 2008-01-18 11:12 ·  中国 北京 鹏博士BGP
初级用户
积分 26
发帖 11
注册 2008-01-17 12:05
18年会员
UID 108831
性别 男
状态 离线
我现在要做一个批处理的文件,是根据文件夹中文件的日期进行删除操作,由于所学知道有限,希望得到大家的帮助,谢谢!!dos命令中哪个命令是得到文件的日期,是不 还要用到循环操作呢?

[ Last edited by lxmxn on 2008-2-25 at 03:03 PM ]
2 发表于 2008-01-18 11:48 ·  中国 北京 鹏博士BGP
初级用户
积分 26
发帖 11
注册 2008-01-17 12:05
18年会员
UID 108831
性别 男
状态 离线
怎么没有人响应呢??????????????
3 发表于 2008-01-18 11:56 ·  中国 江苏 苏州 移动
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
%~t0

[ Last edited by huahua0919 on 2008-1-18 at 11:57 AM ]
4 发表于 2008-01-18 11:57 ·  中国 北京 鹏博士BGP
初级用户
积分 26
发帖 11
注册 2008-01-17 12:05
18年会员
UID 108831
性别 男
状态 离线
Originally posted by huahua0919 at 2008-1-18 11:56 AM:
%%~t0


不好意思 我是新手 ,能说的具体一点吗?
5 发表于 2008-01-18 11:59 ·  中国 江苏 苏州 移动
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线

@echo off
echo %~t0
pause

将代码保存运行下看看
6 发表于 2008-01-18 12:14 ·  中国 江苏 苏州 移动
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
vbs:

set fso=CreateObject("Scripting.FileSystemObject")
set f=fso.getFile("path")
msgbox ("创建时间:"&f.DateCreated&"----"&"最后修改时间:"&f.DateLastModified)
7 发表于 2008-01-18 12:24 ·  中国 北京 鹏博士BGP
初级用户
积分 26
发帖 11
注册 2008-01-17 12:05
18年会员
UID 108831
性别 男
状态 离线
好的 我运行看看 谢谢!!!!!!
8 发表于 2008-01-18 12:31 ·  中国 北京 鹏博士BGP
初级用户
积分 26
发帖 11
注册 2008-01-17 12:05
18年会员
UID 108831
性别 男
状态 离线
Originally posted by huahua0919 at 2008-1-18 11:59 AM:

@echo off
echo %~t0
pause

将代码保存运行下看看



如果我要显示一个文件夹下所有文件的时间怎么弄,还有我最后是要进行比较的,是不还需要有个变量来存储时间信息呢?
9 发表于 2008-01-18 12:32 ·  中国 北京 鹏博士BGP
初级用户
积分 26
发帖 11
注册 2008-01-17 12:05
18年会员
UID 108831
性别 男
状态 离线
Originally posted by huahua0919 at 2008-1-18 12:14 PM:
vbs:

set fso=CreateObject("Scripting.FileSystemObject")
set f=fso.getFile("path")
msgbox ("创建时间:"&f.DateCreated&"----"&"最 ...


这个运行没有显示啊
10 发表于 2008-01-18 12:34 ·  中国 北京 鹏博士BGP
初级用户
积分 26
发帖 11
注册 2008-01-17 12:05
18年会员
UID 108831
性别 男
状态 离线
Originally posted by huahua0919 at 2008-1-18 12:14 PM:
vbs:

set fso=CreateObject("Scripting.FileSystemObject")
set f=fso.getFile("path")
msgbox ("创建时间:"&f.DateCreated&"----"&"最 ...



这里面的 path 参数我加上了 怎么不显示呢
11 发表于 2008-01-18 12:40 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
仅供参考


@echo off
rem 假设要删除C盘test文件夹里面的十天前的文件
set TarDir=C:\test

>"%tmp%\MyDel.vbs" echo dt=date()-10
>>"%tmp%\MyDel.vbs" echo s=right(year(dt),4) ^& right("0" ^& month(dt),2) ^& right("0" ^& day(dt),2)
>>"%tmp%\MyDel.vbs" echo wscript.echo s
for /f %%a in ('cscript /nologo %tmp%\MyDel.vbs') do @set DateFlag=%%a
setlocal enabledelayedexpansion
for %%i in (C:\test\*.*) do (
set t=%%~ti
set FileDate=!t:~6,4!!t:~0,2!!t:~3,2!
if !FileDate! lss %DateFlag% del /f "%%i"
)
endlocal
del "%tmp%\MyDel.vbs"
12 发表于 2008-01-23 11:49 ·  中国 北京 鹏博士BGP
初级用户
积分 26
发帖 11
注册 2008-01-17 12:05
18年会员
UID 108831
性别 男
状态 离线
Originally posted by HAT at 2008-1-18 12:40 PM:
仅供参考


@echo off
rem 假设要删除C盘test文件夹里面的十天前的文件
set TarDir=C:\test

>"%tmp%\MyDel.vbs" echo dt=date()-10
>>"%tmp%\MyDe ...



>"%tmp%\MyDel.vbs" 这是什么意思 我不明白。我是初学者
13 发表于 2008-01-23 14:06 ·  中国 上海 浦东新区 电信
初级用户
★★
积分 177
发帖 85
注册 2007-12-01 20:40
18年会员
UID 104378
性别 男
状态 离线
Originally posted by huahua0919 at 2008-1-18 11:56 AM:
%~t0

[ Last edited by huahua0919 on 2008-1-18 at 11:57 AM ]

这个命令是显示时间么?
是不是FDOS下也可以用 ?
14 发表于 2008-02-25 11:26 ·  中国 山东 潍坊 电信
中级用户
★★
积分 201
发帖 75
注册 2007-02-24 00:26
19年会员
UID 80034
性别 男
状态 离线
Originally posted by huahua0919 at 2008-1-18 11:59 AM:

@echo off
echo %~t0
pause

将代码保存运行下看看


请问象这样 ( %~t0 ) 的还有那些呀?
论坛跳转: