bat如何延时执行指定命令?

首先bat延迟指的是就是执行一条命令后延迟一段时间再进行下一条命令。在cmd下或批处理中,常使用以下四种方法进行时间延迟:

bat等待10秒 bat等待3秒bat等待10秒 bat等待3秒


bat等待10秒 bat等待3秒


1、利用ping命令延时。

示例1:

@echooff

echo延时前:%time%

ping/n3127.0.0.1>nul

echo延时后:%time%

pause

2、利用for命令延时。

示例2:

@echooff

echo延时前:%time%

for/l%%iin(1,1,5000)doecho%%i>nul

echo延时后:%time%

pause

3、利用vbs延迟函数,度毫秒,误1000毫秒内。

示例3:

@echooff

echo%time%

call:delay5000

echo%time%

pause

exit

:delay

echoWScript.Sleep%1>delay.vbs

CScript//Bdelay.vbs

deldelay.vbs

goto:eof

4、仅用批处理命令实现任意时间延迟,度10毫秒,误50毫秒内仅用批处理命令就可以实现延迟作。

示例4:

@echooff

set/pdelay=请输入需延迟的毫秒数:

setTotalTime=0

setNowTime=%time%

::读取起始时间,时间格式为:13:01:05.95

echo程序开始时间:%NowTime%

:delay_continue

set/aminute1=1%NowTime:~3,2%-100

::读取起始时间的分钟数

set/asecond1=1%NowTime:~-5,2%%NowTime:~-2%0-100000

::将起始时间的秒数转为毫秒

setNowTime=%time%

set/aminute2=1%NowTime:~3,2%-100

::读取现在时间的分钟数

set/asecond2=1%NowTime:~-5,2%%NowTime:~-2%0-100000

::将现在时间的秒数转为毫秒

set/aTotalTime+=(%minute2%-%minute1%+60)%%6060000+%second2%-%second1%

if%TotalTime%lss%delay%gotodelay_continue

echo程序结束时间:%time%

echo设定延迟时间:%delay%毫秒

echo实际延迟时间:%TotalTime%毫秒

pause

希望以上几种方法能让你的解决问题!

批处理命令中怎样实现按顺序执行3个exe 跪求指点...

@echo off

for %%a in (diyi dier disan) do (

start "" "%%a.exe"

ping -n 10 127.0.1>nul

start "" "trace.exe"

call :jianche %%a

)goto :eof

:jianche

tasklist|find/i "%1.exe">nul

if %errorll% equ 0 ping -n 5 127.0.1>nul & goto :jianche

taskkill /f /im "trace.exe">nul

goto :eof

保存为.bat执行就可以了..

其中在for 循环里面的

diyi dier disan

这些是你要执行的三个程序的程序的名字,,你自己修改,,按顺序来...

然后这样就可以了...

如何用bat命令重启电脑或关机

关闭计算机

shutdown /s /t 0重启计算机

shutdown /r /t 0用法:

/s 为关闭计算机参数开关

/r 为关机计算机并重启计算机

/t 可以理解为关闭等待的时间,0等于不等待,10等于在关闭前等待10秒在关闭计算机

shutdown -r -t 0 关机

shutdown -s -t 0 重启

// 定时,延时 同理,万变不离宗。