旧版Windows操作系统的TIMEOUT.EXE替代方案?

旧版Windows操作系统的TIMEOUT.EXE替代方案?,windows,batch-file,sleep,pause,Windows,Batch File,Sleep,Pause,我正在尝试编写一个批处理脚本,该脚本在Windows版本中尽可能通用(或者至少从XP到10)。到目前为止,一切都是兼容的(只是一些回音和变量设置),除了它使用TIMEOUT.EXE命令,这在XP或更低版本中不可用 我试图复制exe,但没有成功。我想知道,通过一些巧妙的编码,这是否可能。我基本上需要它在继续之前等待X秒,或者允许按键继续 我尝试使用Server2003实用程序包中的sleep.exe,同时将其管道传输到set/p“=”,反之亦然,但也不起作用 感谢您的帮助。有很多方法。似乎是最受欢

我正在尝试编写一个批处理脚本,该脚本在Windows版本中尽可能通用(或者至少从XP到10)。到目前为止,一切都是兼容的(只是一些回音和变量设置),除了它使用TIMEOUT.EXE命令,这在XP或更低版本中不可用

我试图复制exe,但没有成功。我想知道,通过一些巧妙的编码,这是否可能。我基本上需要它在继续之前等待X秒,或者允许按键继续

我尝试使用Server2003实用程序包中的sleep.exe,同时将其管道传输到
set/p“=”
,反之亦然,但也不起作用

感谢您的帮助。

有很多方法。似乎是最受欢迎的。你也可以试试

使用w32tm

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

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

start "" /w /b /min mshta "javascript:setTimeout(function(){close();},5000);"
有一个命令提供了一个默认选项和一个超时。
例如:

rem/*等待10秒,然后选择默认选项“0”;
rem您可以使用'0'到'9'和'A'到'Z'中的任意一个键中断等待;
rem不能使用标点符号或空格作为选项:*/
选择/C 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ/D 0/T 10
rem//“ErrorLevel”值将被设置为非零值。

不是最好的工具,但使用带有自定义消息和超时(本演示中为5秒)的选项,并带有击键中断(除输入esc等外的任意键)


如果您想要通用兼容性,他们建议使用
ping
命令。不确定你是否可以用按键来停止它。@Banex只是尝试了这个命令,但没有用。它等待,但不会停止按键。谢谢你,你很难找到一个可以按键的替代选项。所以你的问题应该是允许按键继续。也许会对你有所帮助…奇怪的是,我尝试了你的第一个w32tm命令,我得到了一个
start“,一个
叉形炸弹,就在那之后运行。酷。而且它不允许按键来阻止它。我试试第二个。是的,第二个暂停,但不允许按键停止。无论如何谢谢你
@echo off
choice /c qwertyuiopasdfghjklzxcvbnm1234567890 /cs /n /M "Timeout is 5 seconds.. press any key to Continue." /D c /T 5
echo 1 > null