用DOS命令按日期删除文件

建立一个批处理文件,运行该文件后,自动来判断今天的日期,比如日期大于或等于2006年8月9日,那么就自动删除d:\log\*.*用dos批处理如何实现,最好告诉我命令的详... 建立一个批处理文件,运行该文件后,自动来判断今天的日期,比如日期大于或等于2006年8月9日,那么就自动删除d:\log\*.*

用dos批处理如何实现,最好告诉我命令的详细说明

不用windows的计划任务。
二楼的朋友,能告诉我判断日期大于2006-7-30号该如何处理呀?
我的意思是,如果2006-7-30日没有开机那么这个条件以后就再也不会成立了。如果能判断日期大于2006-7-30日,那么这个条件还会成立的。
展开
 我来答
rushchao
2006-07-30 · TA获得超过478个赞
知道小有建树答主
回答量:439
采纳率:0%
帮助的人:602万
展开全部
@date /T|find "2006-07-30" && echo "条件符合!执行任务"

就这么一句话,简单吧!
@符号的作用是让这条命令不回显,不明白也无所谓!

首先用date /T 命令得到当前日期(如果需要以时间为条件的话,可以用time命令),然后将他的结果传递给find命令(传递时用 | 这个符号),find命令则在date /T的结果中搜寻指定的关键字,这里你可以设置为你需要的日期,比如"2006-10-01" 注意要把关键字(也就是你的条件)放在双引号内
或者"2006-07-30"等等,随便日期(但需要注意千万不要省略写成2006-7-30)

&&的意思是前边的命令成立的情况下执行后边的命令,我这里随便弄个命令 echo 毫无任何意义
你把它改成 你需要执行的命令即可!

@date /T|find "2006-07-30" && DEL C:\123\*.* /s/f/q

再免费教你点,考虑到你要自动执行任务,但del在删除文件的时候会提示你确认,所以你可以在在删除命令后边加上 /q命令,它就不提示了,再加个/s命令则能把123目录下的所有子目录以及子目录下的文件都删掉,这也许是你想要的结果,再加/f的作用是强制删除

这里你可以找个折中的办法就是如果要判断日期大于2006-07-30则可以判断当前日期是否为2006-08-01即可
命令是死的,人是活的
匿名用户
2006-07-28
展开全部
编程实现,然后把程序的运行语句加入到autoexec.bat里面,如果你不会编的话,我可以帮你!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式