windows批处理中,获取上一小时的时间戳,格式为yyyymmddhh

btlyeo 2014-06-24 03:04:33
如题,ftp服务器上每小时初都生成一个yyyymmddhh.txt格式的文件。

本地系统是windows2003,需要在每小时的第10分钟获取上一小时的文件。

试着自己写了一下,存在几个问题不知道如何处理

1、小时补0,如2014-06-24的2点,需要变成2014062401,表示上一小时

2、0点则需要天数减1,比如2014-06-24的0点,则需要变成2014062323,表示23号的23点。

3、0点并且是月底,则需要月份-1,比如20140601的0点,要变成2014053123。

4、0点并且是年底,比如2014-01-01的0点,则变成2013123123。

大家应该明白我的意思了~

help!
...全文
1012 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2014-06-25
  • 打赏
  • 举报
回复
@echo off
echo set fso = CreateObject("Scripting.FileSystemObject")        >tmp.vbs
echo set a = fso.CreateTextFile("yyyymmddhh.txt", True)         >>tmp.vbs
echo s=FormatDateTime(DateAdd("h",-1,Now))                      >>tmp.vbs
echo a.WriteLine(Mid(s,1,4)+Mid(s,6,2)+Mid(s,9,2)+Mid(s,12,2))  >>tmp.vbs
echo a.Close                                                    >>tmp.vbs
echo set a=Nothing                                              >>tmp.vbs
echo set fso=Nothing                                            >>tmp.vbs
call tmp.vbs
del tmp.vbs >NUL 2>NUL
for /F %%s in (yyyymmddhh.txt) do set YYYYMMDDHH=%%s
del yyyymmddhh.txt >NUL 2>NUL
echo %YYYYMMDDHH%

18,124

社区成员

发帖
与我相关
我的任务
社区描述
Windows客户端使用相关问题交流社区
社区管理员
  • Windows客户端使用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧