手机
当前位置:查字典教程网 >脚本专栏 >DOS/BAT >用DOS批处理实现建立文件夹的代码
用DOS批处理实现建立文件夹的代码
摘要:题目:用DOS批处理实现建立文件夹要求:1要求建立文件名格式为"YYYY1-MM1-DD1至YYYY2-MM2-DD2"的文件夹2其中YYY...

题目:用DOS批处理实现建立文件夹

要求:1要求建立文件名格式为"YYYY1-MM1-DD1至YYYY2-MM2-DD2"的文件夹

2其中YYYY1-MM1-DD1是今天的日期;YYYY2-MM2-DD2是四天后的日期

解答:

复制代码 代码如下:

@echooff

rem比较运算符:EQU-等于NEQ-不等于LSS-小于LEQ-小于或等于GTR-大于GEQ-大于或等于

rem取模运算符:%%DOS的取模运算符(批处理文件里用%%,非批处理命令行下用%)

rem日志文件夹名称初始值

setfilelog=%date:~0,10%至

rem后续日期的变量

set/Ay=0

set/Am=0

set/Ad=0

rem取日期YYYYMMDD中的DD两位

set/Add=%date:~8,2%

set/Addp4=%dd%+4

rem取日期YYYYMMDD中的MM两位

set/Amm=%date:~5,2%

set/Ammp1=%mm%+1

rem取日期YYYYMMDD中的YYYY四位

set/Ayyyy=%date:~0,4%

set/Ayyyyp1=%yyyy%+1

set/Ayymd=yyyy%%4

rem如果是31天的月份(1,3,5,7,8,10,12)

rem12月特殊

if%mm%equ12(

if%ddp4%leq31(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr31(

if%mmp1%gtr12(

set/Ay=%yyyy%+1

set/Am=1

set/Ad=%ddp4%-31

)

)

gotoEND

)

if%mm%equ10(

if%ddp4%leq31(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr31(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-31

)

gotoEND

)

if%mm%equ8(

if%ddp4%leq31(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr31(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-31

)

gotoEND

)

if%mm%equ7(

if%ddp4%leq31(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr31(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-31

)

gotoEND

)

if%mm%equ5(

if%ddp4%leq31(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr31(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-31

)

gotoEND

)

if%mm%equ3(

if%ddp4%leq31(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr31(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-31

)

gotoEND

)

if%mm%equ1(

if%ddp4%leq31(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr31(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-31

)

gotoEND

)

rem如果是30天的月份(4,6,9,11)

if%mm%equ11(

if%ddp4%leq30(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr30(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-30

)

gotoEND

)

if%mm%equ9(

if%ddp4%leq30(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr30(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-30

)

gotoEND

)

if%mm%equ6(

if%ddp4%leq30(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr30(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-30

)

gotoEND

)

if%mm%equ4(

if%ddp4%leq30(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr30(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-30

)

gotoEND

)

rem如果是28或29天的月份(2)

if%mm%equ2(

if%yymd%equ0(

if%ddp4%leq29(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr29(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-29

)

gotoEND

)

if%ddp4%leq28(

set/Ay=%yyyy%

set/Am=%mm%

set/Ad=%ddp4%

)

if%ddp4%gtr28(

set/Ay=%yyyy%

set/Am=%mmp1%

set/Ad=%ddp4%-28

)

)

rem组合文件夹名称,并建立文件夹

:END

if%m%lss10setfilelog=%filelog%%y%-0%m%

ifnot%m%lss10setfilelog=%filelog%%y%-%m%

if%d%lss10setfilelog=%filelog%-0%d%

ifnot%d%lss10setfilelog=%filelog%-%d%

mkdir%filelog%

【用DOS批处理实现建立文件夹的代码】相关文章:

批处理版的SC

如何用DOS命令删除顽固文件夹啊

用批处理实现将文件以数字重命名的代码

关于制作一个通用的DOS批处理段注释命令的思路介绍

最强的用批处理编写的病毒

使用批处理删除HOSTS中特定内容的行的代码

Windows 2000下用DOS命令删除文件夹

批处理应用根据文件内容进行重命名操作

用批处理实现强制与他人QQ聊天

BAT批处理文件语法第1/2页

精品推荐
分类导航