标题: [日期时间] 求助代码查错:根据批处理执行时时间段的不同生成不同文件夹? [打印本页]
作者: generalzzy 时间: 2016-5-22 15:17 标题: 求助代码查错:根据批处理执行时时间段的不同生成不同文件夹?
本帖最后由 pcl_test 于 2016-5-22 17:43 编辑
比如2016/05/22的15点执行该程序,生成目录2016052200;而2016/05/22的05点执行该程序,生成目录2016052112
但是代码中if语句不起作用,总到else中去,请专家帮忙调试,多谢多谢- rem 记得改系统的日期格式为yyyy/mm/dd,日期改为HH:mm
- rem 每天12点前,创建目录为“前一天12”,每天12点之后,创建目录为“当天00”
- rem 你可以把计算机的小时数分别设为05和15测试一下。
- rem 逻辑应该没问题,现在问题是if判断不起作用,总执行到else中
- set tt=%time:~0,2%
- if %tt% gtr 12 set datedir=%date:~0,4%%date:~5,2%%date:~8,2%00 else (
- pause
- set DaysAgo=1
- >"%temp%\MyDate.vbs" echo LastDate=date()-%DaysAgo%
- >>"%temp%\MyDate.vbs" echo FmtDate=right(year(LastDate),4) ^& right("0" ^& month(LastDate),2) ^& right("0" ^& day(LastDate),2)
- >>"%temp%\MyDate.vbs" echo wscript.echo FmtDate
- for /f %%a in ('cscript /nologo "%temp%\MyDate.vbs"') do (
- set DstDate=%%a
- )
-
- set datedir=%date:~0,4%%date:~5,2%%DstDate:~6,2%12
- )
-
- mkdir %datedir%
- cd %datedir%
复制代码
作者: generalzzy 时间: 2016-5-22 17:13
在线期盼中
作者: ivor 时间: 2016-5-22 17:32
本帖最后由 ivor 于 2016-5-22 17:38 编辑
- powershell -command "& {(get-date).AddHours(-15).tostring(\"yyyyMMddHH\") | %{md $_}}"
复制代码
新建文件夹,在当前的时间减少15个小时
作者: pcl_test 时间: 2016-5-22 17:55
- @echo off
- set 时=12
- set 日=-1
- set h=%time:~,2%
- if %h% geq 12 if %h% leq 23 set 日=0&set 时=00
- for /f %%a in ('mshta VBScript:Execute("NewDate=date()+(%日%):FmtDate=year(NewDate)&right(""0""&month(NewDate),2)&right(""0""&day(NewDate),2):CreateObject(""Scripting.FileSystemObject"").GetStandardStream(1).Write FmtDate"^)(close^)') do set 日期=%%a
- md %日期%%时%
- pause
复制代码
作者: generalzzy 时间: 2016-5-22 18:11
回复 4# pcl_test
多谢多谢!!牛人!
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |