Windows的Snipping工具可以捕捉屏幕,但有时我想在五秒钟后捕捉屏幕,例如拍摄网络摄像头显示的图像。(例如,运行脚本并对着镜头微笑。)
如何在批处理文件中休眠5秒?
Windows的Snipping工具可以捕捉屏幕,但有时我想在五秒钟后捕捉屏幕,例如拍摄网络摄像头显示的图像。(例如,运行脚本并对着镜头微笑。)
如何在批处理文件中休眠5秒?
当前回答
我很惊讶没有人提到:
C:\> timeout 5
注意:但是,请注意(谢谢Dan!)超时5意味着:
睡眠时间在4到5秒之间
这可以通过将以下内容放入批处理文件,重复运行并计算第一次和第二次回声之间的时间差来进行经验验证:
@echo off
echo %time%
timeout 5 > NUL
echo %time%
其他回答
我认为以下命令可以帮助您:
pause 5
pause命令的语法为:pause d\\其中d表示持续时间(秒)
我使用的是Windows 7(32位),但我不知道其他的。
PING -n 60 127.0.0.1>nul
以防LAN适配器不可用。
我使用完全基于Windows XP功能的以下方法来延迟批处理文件:
文件DELAY.BAT
@ECHO OFF
REM DELAY seconds
REM GET ENDING SECOND
FOR /F "TOKENS=1-3 DELIMS=:." %%A IN ("%TIME%") DO SET /A H=%%A, M=1%%B%%100, S=1%%C%%100, ENDING=(H*60+M)*60+S+%1
REM WAIT FOR SUCH A SECOND
:WAIT
FOR /F "TOKENS=1-3 DELIMS=:." %%A IN ("%TIME%") DO SET /A H=%%A, M=1%%B%%100, S=1%%C%%100, CURRENT=(H*60+M)*60+S
IF %CURRENT% LSS %ENDING% GOTO WAIT
您也可以在计算中插入日期,这样当延迟间隔超过午夜时,该方法也可以工作。
您可以使用超时:
这将是可见的:超时5
这将不可见超时5>nul
您可以使用VBScript,例如文件myscript.vbs:
set wsobject = wscript.createobject("wscript.shell")
do while 1=1
wsobject.run "SnippingTool.exe",0,TRUE
wscript.sleep 3000
loop
批处理文件:
cscript myscript.vbs %1