中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求助怎么删除30天前的文件夹(md f:\"%date%")
作者:
标题: 求助怎么删除30天前的文件夹(md f:\"%date%") 上一主题 | 下一主题
smice2005
新手上路





积分 4
发帖 1
注册 2007-1-16
状态 离线
『楼 主』:  求助怎么删除30天前的文件夹(md f:\"%date%")

文件名
每天.cmd

md f:\"%date%"

每天运行的.用的任务计划.

在f盘建立了 文件夹 2007-01-15 星期一

----------------------------------------------------------
现在要删除30天前的文件夹怎么删除?

@echo off
set n=30
>%tmp%\tmp.vbs echo wscript.echo dateadd("d",-%n%,date)
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo %tmp%\tmp.vbs') do (
set y=%%i
set m=%%j
set d=%%k
)
if %m% LSS 10 set m=0%m%
if %d% LSS 10 set d=0%d%
set nowdate=%y%-%m%-%d%  

    注:这里的日期是 2006 -12 -16 怎么去掉空格?应该是2006-12-16  星期?  还有星期几怎么得到
---------------------------------------------------------------下面好像错的--------------
set xqj=%nowdate:~-3%
if %xqj%==1 set xqj=星期一
if %xqj%==2 set xqj=星期二
if %xqj%==3 set xqj=星期三
if %xqj%==4 set xqj=星期四
if %xqj%==5 set xqj=星期五
if %xqj%==6 set xqj=星期六
if %xqj%==7 set xqj=星期日
星期几好像可以了
如果set n=28 就出问题了.....................
---------------------------------------------------------------------------------------------------
set nowdate=%nowdate%%xqj%
del/Q  F:\"%nowdate%"
RD F:\"%nowdate%"

[ Last edited by smice2005 on 2007-1-15 at 04:02 PM ]

2007-1-16 03:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
scriptor
银牌会员




积分 1187
发帖 555
注册 2006-12-21
状态 离线
『第 2 楼』:  


看看这里,自己学着修改。。
http://www.cn-dos.net/forum/viewthread.php?tid=26674&fpage=3


2007-1-16 09:01
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: