Windows的Snipping工具可以捕捉屏幕,但有时我想在五秒钟后捕捉屏幕,例如拍摄网络摄像头显示的图像。(例如,运行脚本并对着镜头微笑。)

如何在批处理文件中休眠5秒?


当前回答

SLEEP 5包含在一些Windows资源工具包中。

TIMEOUT 5包含在一些Windows资源工具包中,但现在是Windows 7和8中的标准命令(不确定Vista)。

PING 1.1.1.1-n 1-w 5000>NUL对于任何带有TCP/IP客户端的MS-DOS或Windows版本,PING可用于延迟执行数秒。

NETSH badcommand(仅限Windows XP/Server 2003)或CHOICE

此链接将帮助您更多。

其他回答

SLEEP 5包含在一些Windows资源工具包中。

TIMEOUT 5包含在一些Windows资源工具包中,但现在是Windows 7和8中的标准命令(不确定Vista)。

PING 1.1.1.1-n 1-w 5000>NUL对于任何带有TCP/IP客户端的MS-DOS或Windows版本,PING可用于延迟执行数秒。

NETSH badcommand(仅限Windows XP/Server 2003)或CHOICE

此链接将帮助您更多。

您可以使用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

一种黑客是(错误地)使用ping命令:

ping 127.0.0.1 -n 6 > nul

说明:

ping是一个发送ping请求的系统实用程序。ping在所有版本的Windows上都可用。127.0.0.1是本地主机的IP地址。此IP地址保证始终解析、可访问并立即响应ping。-n 6指定将有6个ping。每个ping之间有一个1s的延迟,因此对于5s的延迟,您需要发送6个ping。>nul通过将ping重定向到nul来抑制ping的输出。

如果您有适当版本的Windows和Windows Server 2003资源工具包工具,它包括批处理程序的休眠命令。更多信息:http://malektips.com/xp_dos_0002.html

还有两种方法可以处理XP及以上版本的所有内容:

具有w32tm:

w32tm /stripchart /computer:localhost /period:5 /dataonly /samples:2  1>nul 

类型为perf:

typeperf "\System\Processor Queue Length" -si 5 -sc 1 >nul

使用mshta(不需要设置网络):

start "" /w /b /min mshta "javascript:setTimeout(function(){close();},5000);"