0
A
回答
0
这是批处理文件中的VBS脚本。
:: date 30 days ago
@echo off
set day=-30
echo >"%temp%\%~n0.vbs" s=DateAdd("d",%day%,now) : d=weekday(s)
echo>>"%temp%\%~n0.vbs" WScript.Echo year(s)^& right(100+month(s),2)^& right(100+day(s),2)
for /f %%a in ('cscript /nologo "%temp%\%~n0.vbs"') do set "result=%%a"
del "%temp%\%~n0.vbs"
set "YYYY=%result:~0,4%"
set "MM=%result:~4,2%"
set "DD=%result:~6,2%"
set "date-then=%yyyy%-%mm%-%dd%"
echo The date then was "%date-then%"
pause
0
日期和时间的工作是很难只用本地的Windows批处理命令,特别是如果你正在处理为可与时间戳可以找到大量的表现为毫秒,因为1970-01-01 00:00:00.000世界标准时间。作为foxidrive已经证明,使用VBScript(或JScript)的计算很容易。
我写了一个hybrid JScript/batch utility called getTimestamp.bat,可以很容易地处理批处理脚本中的日期和时间。该实用程序是纯粹的脚本,可以从XP以后的任何现代Windows机器上本机运行。该实用程序中嵌入了完整的文档。之前,今日(当地时间)
获取日起30日内,并将其存储在DT可变
call getTimestamp -od -30 -f {yyyy}-{mm}-{dd} -r DT
没有指定日期格式。该实用程序几乎支持任何您想要的格式。自1970-01-01
获取当前的日期/时间表示为毫秒00:00:00.000 UTC和存储在TS可变
call getTimestamp -f {ums} -r TS
注:我怀疑,JScript的时间计算可能不占闰秒。所以这个值可能不是100%准确的。
如果你想今天的午夜(当地时间)日期前30天的时间标记,表示为毫秒,因为1970-01-01 00:00:00.000 UTC和存储在TS可变
call getTimestamp -od -30 -f {mm}/{dd}/{yyyy} -r DT
call getTimestamp -d '%DT%' -F {ums} -r TS
有许多选项的效用。从命令提示符处输入getTimestamp -?
以获取完整文档。
相关问题
- 1. 将毫秒转换为日期和日期为毫秒
- 2. 从毫秒转换到MYSQL日期
- 3. shell脚本的任何日期转换为毫秒
- 4. 在毫秒中将毫秒转换为日期时间
- 5. 试图毫秒转换为日期
- 6. 将毫秒转换为日期/时间
- 7. elasticsearch中的日期转换为毫秒
- 8. 转换日期为毫秒黑莓
- 9. 将毫秒数值转换为日期?
- 10. 毫秒转换为日期对象
- 11. 将日期转换为毫秒
- 12. php:将毫秒转换为日期
- 13. 转换日期和时间为毫秒
- 14. 转换日期为毫秒给Android(java)
- 15. 将UTC日期转换为毫秒
- 16. SQL删除毫秒和日期转换
- 17. 转换日期为毫秒AngularJS JavaScript的
- 18. 安卓:转换日期为毫秒
- 19. 转换日期时间用毫秒到SQL日期时间
- 20. 从毫秒到日期转换时的删除日期
- 21. 将日期转换为朱利安日期的批处理脚本
- 22. 将批处理脚本转换为Shell
- 23. 转换shell脚本,Windows批处理
- 24. Java日期到毫秒
- 25. 将日期转换为以毫秒为单位的日期
- 26. moment.js将毫秒转换为日期日期
- 27. Javascript日期+毫秒
- 28. mktime秒转换到日期
- 29. 如何在Java程序中将日期从bash脚本转换为毫秒?
- 30. SQL Server 2008中的日期时间转换成秒/毫秒
你能告诉我如何将日期转换为毫秒? – Prakki
它可能会溢出批处理数学中的2^31限制。 – foxidrive