Batch file 批处理文件标签运行30秒

Batch file 批处理文件标签运行30秒,batch-file,Batch File,我的程序既学习如何,也使有趣的笑话和技巧文件。我正在尝试创建一个批处理文件,该文件将在批处理文件中运行一个标签,运行时间设置为30秒,而不必使用for do语句。到目前为止,我所做的如下所示,并简化为一个小测试,但使用了FORDO语句 @ echo off for /l %%a in (1,1,10) do ( call :matrix) echo Thanks for using the MATRIX pause :matrix echo %random%%random% @ e

我的程序既学习如何,也使有趣的笑话和技巧文件。我正在尝试创建一个批处理文件,该文件将在批处理文件中运行一个标签,运行时间设置为30秒,而不必使用for do语句。到目前为止,我所做的如下所示,并简化为一个小测试,但使用了FORDO语句

@ echo off

for  /l %%a in (1,1,10) do (
  call :matrix)

echo Thanks for using the MATRIX
pause

:matrix
echo %random%%random%
@ echo off

for  /l %%a in (1,1,10) do (
  call :matrix)

echo Thanks for using the MATRIX
timeout 30 

:matrix
echo %random%%random%

这将启动第二个
cmd
进程(最小化),该进程只需执行
超时30
。它的存在是重复循环的信号

@echo off
start /min "MyTimer" timeout 30
:loop
echo %random%%random%
tasklist /fi "windowtitle eq MyTimer" | find "Console" >nul && goto :loop
遗憾的是,
tasklist
没有给出有用的错误级别,因此我们必须使用
find


注意:出于调试目的,您可能需要删除
start
开关
/min

使用
timeout
命令,它可以设置时间量,如30秒,而无需使用for do语句

@ echo off

for  /l %%a in (1,1,10) do (
  call :matrix)

echo Thanks for using the MATRIX
pause

:matrix
echo %random%%random%
@ echo off

for  /l %%a in (1,1,10) do (
  call :matrix)

echo Thanks for using the MATRIX
timeout 30 

:matrix
echo %random%%random%
如果不想显示计数完成消息,可以使用
timeout 30>nul

提示: