使用bat脚本,获取从系统启动到当前,这个时间段,而且返回的是秒数

使用bat脚本,获取从系统启动到当前,这个时间段,而且返回的是秒数,第1张

@echo off

set "ps_cmd=powershell -c "[Timespan]::FromMilliseconds([Environment]::TickCount)totalseconds""

for /f %%i in ('%ps_cmd%') do echo,开机到目前共:%%i秒

pause

1、新建一个txt文件

2、在里输入内容

@date 2008-04-30

//上面是你要修改回来的日期

@time 15:25

//上面是你要修改回来的时间

3、另存成后缀为bat或cmd文件

@echo off

title 同一月份下的耗时计算

::获取起始月份、起始日期、起始小时和起始分钟

set startmonth=%date:~5,2%

set startday=%date:~8,2%

set starthour=%time:~0,2%

set startmin=%time:~3,2%

echo&echo 修改系统日期和时间为未来同一个月份下的某日某月某时某分 以便测试脚本

echo 完成修改后 按任意键继续

pause >nul

::获取终止月份、终止日期、终止小时和终止分钟

set endmonth=%date:~5,2%

set endday=%date:~8,2%

set endhour=%time:~0,2%

set endmin=%time:~3,2%

::初始化间隔日期变量、间隔小时变量和间隔分钟变量

set intday=0

set inthour=0

set intmin=0

::初始化耗时变量

set inttime=0

::如果结束月份和起始月份不在同一月 则调用calc4标签

if %endmonth% NEQ %startmonth% (call:calc4 & goto :finalresult)

::如果结束日期等于起始日期 则调用calc1标签

if %endday% EQU %startday% (call:calc1 & goto :finalresult)

::如果结束日期大于起始日期 则调用calc2标签

if %endday% GTR %startday% (call:calc2 & goto :finalresult)

::如果结束日期小于起始日期 则调用calc3标签

if %endday% LSS %startday% (call:calc3 & goto :finalresult)

::备注:没有规避同一天内结束小时小于起始小时、以及同一小时内结束分钟小于起始分钟的情况,因为在脚本运行过程中,逻辑上一般不会出现这两种情况。

::显示耗时

:finalresult

echo 耗时:%inttime%

exit /b

::同一天内的耗时计算 需考虑到结束分钟小于起始分钟的时候 从终止小时借位的情况

:calc1

if /i %endmin% LSS %startmin% (set /a intmin=endmin+60-startmin & set /a endhour-=1) else (set /a intmin=endmin-startmin)

set /a inthour=endhour-starthour

set /a intday=endday-startday

set inttime=%intday%天%inthour%小时%intmin%分钟

goto :eof

::同一月份但不同天内的耗时计算 需考虑到结束分钟小于起始分钟的时候 从终止小时借位的情况 需考虑到结束小时小于起始小时的时候 从终止日期借位的情况

:calc2

if /i %endmin% LSS %startmin% (set /a intmin=endmin+60-startmin & set /a endhour-=1) else (set /a intmin=endmin-startmin)

if /i %endhour% LSS %starthour% (set /a inthour=endhour+24-starthour & set /a endday-=1) else (set /a inthour=endhour-starthour)

set /a intday=endday-startday

set inttime=%intday%天%inthour%小时%intmin%分钟

goto :eof

::同一月份下 结束日期逻辑上不能小于起始日期 抛出错误

:calc3

set inttime=错误!结束日期小于起始日期!

goto :eof

::跨月份的情况忽略不计

:calc4

set inttime=跨月份忽略耗时计算

goto :eof

以上就是关于使用bat脚本,获取从系统启动到当前,这个时间段,而且返回的是秒数全部的内容,包括:使用bat脚本,获取从系统启动到当前,这个时间段,而且返回的是秒数、怎么用bat文件修改系统时间、bat读取时间、计算时间间隔脚本等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9564148.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存