- 帖子
- 181
- 积分
- 634
- 技术
- 7
- 捐助
- 0
- 注册时间
- 2009-1-6
|
2楼
发表于 2009-6-16 11:30
| 只看该作者
原帖由 fzlqq 于 2009-6-16 10:35 发表
我现在有个需求是
一个bat文件里面有一条命令,我需要它最多执行15分钟,如果15分钟还没执行完我就执行下面的命令。有人会吗,求教了
写了个对比时间差的,不是用在中断执行,但修改一下应该用得了
主要是:
结束时间-(一天总秒数-开始时间)
=余秒为两个时间的差值
@echo off
:1
set "∞=﹨" &call :∞
::============================================================
::↓↓↓↓↓↓↓↓↓↓↓↓↓TEXT↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
cls
@echo 计时...
pause>nul
::↑↑↑↑↑↑↑↑↑↑↑↑↑TEXT↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
::============================================================
set "∞=∕"
:∞
if not defined %time:~0,1% ( set time2=0%time:~1,1% &if defined %time:~0,1% set time2=%time2:~0,2% )
if %time2:~0,1%==0 (set /a %∞%Y=%time2:~1,1%*3600) else (set /a %∞%Y=%time2:~0,2% *3600)
if %time:~3,1%==0 (set /a %∞%M=%time:~4,1%*60) else (set /a %∞%M=%time:~3,2%*60)
if %time:~6,1%==0 (set %∞%N=%time:~7,1%) else (set %∞%N=%time:~6,2%)
if %time:~9,1%==0 (set %∞%NN=%time:~10,1%) else (set %∞%NN=%time:~9,2%)
if not %∞%==∕ (goto :eof)
set /a ﹨﹨=(86400-%﹨Y%-%﹨M%-%﹨N%)-(86400-%∕Y%-%∕M%-%∕N%)&set /a ∕∕=(100-%﹨NN%)+%∕NN%
if 99 leq %∕∕% if %﹨﹨% GEQ 1 ( set /a ∕∕-=100 && set /a ﹨﹨+=1 ) else ( set /a ∕∕=%∕NN%-%﹨NN% )
cls&echo %﹨﹨%.%∕∕% s&pause>nul
goto :1
[ 本帖最后由 Taurus 于 2009-6-16 11:43 编辑 ] |
|