bat批处理中如何获取前一天日期


网上找了好久在批处理中生成前一日期的代码段

但网上找到的代码对 每个月的1号和每年的1号计算前一日期时,总会报错,然后要加很多的逻辑判断

想了想,可以用.net写个EXE程序,用.net实现获取前一日期的逻辑 ,然后把结果传给bat批处理文件即可

最终成果如下:

 

@echo off
echo del d:\backupdata\*.dmp /Q


getdate.exe getdate -1 yyyyMMdd >getdate.txt
set num=0;
for /f "delims=" %%i in (getdate.txt) do (
set preday=%%i
)
del getdate.txt


echo COPY X:\DBBK\db_%preday%.dmp Z:\backupdata\

其中getdate.exe为自己写的程序,参数说明如下

参数1 操作名称 默认写getdate

参数2 当前日期加(减)天数 例如 取前一天则可以写 -1

参数3 日期显示格式 例如  20170821 应写 yyyyMMdd

当然,如果你想取上一工作日的话,还需要做相关节假日的判断了,这里就不再说明了。

文件下载地址

http://pan.baidu.com/s/1kVFrW0n

 

enjory:p

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM