如何将vbs脚本程序执行的结果作为dos中del命令的参数
现在想做一个定期删除文件的.bat文件
先要用vbs程序算出前一天的日期值strYest
然后再用del /q strYest*.log
但如果在del中直接用strYest,系统会提示找不到strYest,也就是没有去取strYest中的值,而直接将strYest作为字符串处理
如何才能取出strYest中的值
望指教,谢谢
[解决办法]
参考这段代码:
- BatchFile code
@echo offrem 假设要删除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 sfor /f %%a in ('cscript /nologo %tmp%\MyDel.vbs') do @set DateFlag=%%asetlocal enabledelayedexpansionfor %%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")endlocaldel "%tmp%\MyDel.vbs"