[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理怎样删除指定天数日期之前的文件夹?

已经找到相关的批处理程序,不过运行一直提示语法错误。

有三个方案http://chiensq.blog.163.com/blog/static/103562820103311313371/


以方案三为例子:
【方案三】BAT + VBS

@echo off

::演示:删除指定路径下指定天数之前(以文件夹的最后修改日期为准)的文件夹。

::如果演示结果无误,把rd前面的echo去掉,即可实现真正删除。

::本例调用了临时VBS代码进行日期计算,并统一设置系统日期格式,处理完毕

::之后再把日期格式恢复成原来的状态。摆脱了对reg命令(XP系统自带)的依赖。



rem 指定待删除文件夹的存放路径

set SrcDir=C:\test

rem 指定天数

set DaysAgo=1

>"%temp%\BackupDate.vbs" echo Set WshShell = WScript.CreateObject("WScript.Shell")

>>"%temp%\BackupDate.vbs" echo WScript.Echo WshShell.RegRead ("HKEY_CURRENT_USER\Control Panel\International\sShortDate")

for /f %%a in ('cscript /nologo "%temp%\BackupDate.vbs"') do (

  set "RegDateOld=%%a"

)

>"%temp%\UnifyDate.vbs" echo Set WshShell = WScript.CreateObject("WScript.Shell")

>>"%temp%\UnifyDate.vbs" echo WshShell.RegWrite "HKEY_CURRENT_USER\Control Panel\International\sShortDate", "yyyy-M-d", "REG_SZ"

cscript /nologo "%temp%\UnifyDate.vbs"

>"%temp%\DstDate.vbs" echo LastDate=date()-%DaysAgo%

>>"%temp%\DstDate.vbs" echo FmtDate=right(year(LastDate),4) ^& right("0" ^& month(LastDate),2) ^& right("0" ^& day(LastDate),2)

>>"%temp%\DstDate.vbs" echo wscript.echo FmtDate

for /f %%a in ('cscript /nologo "%temp%\DstDate.vbs"') do (

  set "DstDate=%%a"

)

set DstDate=%DstDate:~0,4%-%DstDate:~4,2%-%DstDate:~6,2%

for /d  %%a in ("%SrcDir%\*.*") do (

  if "%%~ta" leq "%DstDate%" (

    if exist "%%a\"

      echo rd /s /q "%%a"

    )

  )

)

>"%temp%\RecoverDate.vbs" echo Set WshShell = WScript.CreateObject("WScript.Shell")

>>"%temp%\RecoverDate.vbs" echo WshShell.RegWrite "HKEY_CURRENT_USER\Control Panel\International\sShortDate", "%RegDateOld%", "REG_SZ"

cscript /nologo "%temp%\RecoverDate.vbs"

pause


总是在运行到红色字体部分的代码的时候提示“命令语法不正确”
请各位高手帮忙看看错哪里了?
另外,红色字体的部分是不是多了一个右括号?网上有很多份代码,都这么写的,我估计第一份写错了,其他的都是复制的。

你看看是不是他们抄代码的时候漏掉了什么
http://www.bathome.net/thread-3503-1-1.html
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表