您可以使用FOR/L循环来引入延迟。这是一个脚本,它引入了大约100毫秒的延迟。靠近顶部的简单测试计算需要多少次迭代才能接近100毫秒。这个数字会因机器而异。根据需要调整msecDelay的定义以获得您想要的结果。
@echo off
setlocal
:: Compute the number of iterations required to get the desired delay
set msecDelay=100
set ticks=100000
set "start=%time%"
for /l %%N in (1 1 %ticks%) do rem
set "stop=%time%"
for /f "tokens=3,4 delims=:.," %%A in ("%start%") do set /a start=1%%A%%B-10000
for /f "tokens=3,4 delims=:.," %%A in ("%stop%") do set /a stop=1%%A%%B-10000
if %start% gtr %stop% set /a stop+=6000
set /a delay=msecDelay*ticks/(stop-start)/10
MODE CON: COLS=91 LINES=41
cls
:3
FOR /R %%i in (*.txt) do (
type "%%i"
for /l %%n in (1 1 %delay%) do rem
)
goto :3
我想知道如果在循环中移动CLS,在您的TYPE语句之前,您会获得更好的结果。
感谢你们俩。 for /循环完美运行。我没有尝试睡眠cmd,因为我想保持资源最低。 –