前一天的日期,创建文件夹、拷贝文件、执行jar程序、删除文件
非常有用的东西,记笔记
@echo off
set YE=%date:~0,4%
set MO=%date:~5,2%
set DA=%date:~8,2%
set DG=1
set/a vY1=%YE% %% 400
set/a vY2=%YE% %% 4
set/a vY3=%YE% %% 100
if %vY1%==0 (set var=true) else (if %vY2%==0 (if %vY3%==0 (set var=false) else (set var=true)) else (set var=false))
set LY=%YE%
set LM=%MO%
if %MO:~0,1%==0 (set MO=%MO:~1,1%)
if %DA:~0,1%==0 (set DA=%DA:~1,1%)
if %DA% GTR %DG% (set/a LD=%DA%-%DG%) else (
if %MO%==1 (set/a LY=%YE%-1) & (set/a LM=12) & (set/a LD=31+%DA%-%DG%) else (
set/a LM=%MO%-1
if %MO%==3 (if %var%==false (set/a LD=28+%DA%-%DG%) else (set/a LD=29+%DA%-%DG%))
for %%a in (2 4 6 8 9 11) do (if "%MO%"=="%%a" (set/a LD=31+%DA%-%DG%))
for %%b in (5 7 10 12) do (if "%MO%"=="%%b" (set/a LD=30+%DA%-%DG%))))
if %LM% LSS 10 set LM=0%LM:~-1%
if %LD% LSS 10 set LD=0%LD:~-1%
set strLstDt=%LY%%LM%%LD%
echo 昨天的日期为:%strLstDt%
cd nc
mkdir %strLstDt%03
copy J:\qhzx\SNOW\城市院预报\RMAPS-ST_%strLstDt%03\%strLstDt%03\* J:\RmapsST\nc\%strLstDt%03\
cd J:\RmapsST
J:
java -jar ReadRmapsST.jar
rd /s /q %strLstDt%03
来源:https://blog.csdn.net/yxp200401/article/details/7804523
```bash
@echo off
::要删除文件所在目录
set folder=E:\NingXiaHouTaiFuWu\wrfout\WWIND10
::要删除的文件的后缀
set suffix=000
::要删除日期,+yyyy/MM/dd表示删除日期之后的文件,-yyyy/MM/dd表示删除日期之前的文件,同时,可使用具体的数字,表示删除几天前的文件
set modifyDate=-2022/04/05
if exist %folder% (
echo file folder is find!
forfiles /p %folder% /s /m *.%suffix% /d %modifyDate% /c "cmd /c del /f /q /a @path"
echo delete is success
) else (
echo file folder is not found!
)
pause
```
![在这里插入图片描述](https://img-blog.csdnimg.cn/dbaa7d1b9c8246aa9585c3d074f7096c.png)