我可以降低批处理文件的速度吗?

时间:2017-02-07 05:26:04

标签: batch-file

我正在尝试批量编写一个ASCII电影,我需要脚本以每秒约10-15行的方式回显一个新行(希望这不会太混乱)。默认情况下,脚本变得非常快,使整个事情变得更加难以看清。

我想要做的是能够设置批处理文件的执行速度,而不是计算机本身。

这是我想要的一个例子:

@echo off
REM Below command sets script execution speed in lines per second
setspeed=10lps
REM Ten lines of 03 begin
echo The time is 13:20:03
echo The time is 13:20:03
echo The time is 13:20:03
echo The time is 13:20:03
echo The time is 13:20:03
echo The time is 13:20:03
echo The time is 13:20:03
echo The time is 13:20:03
echo The time is 13:20:03
REM Ten lines of 03 end
REM Ten lines of 04 begin
echo The time is 13:20:04
echo The time is 13:20:04
.....

谢谢!

4 个答案:

答案 0 :(得分:0)

更新:我发现如果您下载NirCmd(链接位于页面底部),则会包含"等待"命令运作得很好。在我的批处理脚本中,我这样做了:

Data <- data.frame(ID=LETTERS[1:4], 
                   T1=c(0,".",".","."), 

                   T2=c(2,".",8,"."), 
                   T3=c(4,6,6,"."),
                   T4=c(5,5,1,9), stringsAsFactors=FALSE)

NewData <- data.frame(ID=Data$ID, TX=NA, stringsAsFactors=FALSE)

for(i in 1:nrow(NewData)){
  NewData$TX[i] <- Data[i,2:ncol(Data)][which(Data[i,2:ncol(Data)] != ".")][1]
}

答案 1 :(得分:0)

我喜欢使用选择命令。例如:

/t

您可以在Q之后更改数字以设置等待的秒数。您也可以按{{1}}随时跳过等待。

答案 2 :(得分:0)

在较新的Windows操作系统中,也有TIMEOUT命令:

TIMEOUT /T 5

等待5秒钟,并显示倒数计时,例如正在等待秒。继续输入任何密钥。

TIMEOUT /T 5 > NUL

执行相同操作而不显示任何内容。

TIMEOUT /T 5 /NOBREAK > NUL

另外消除了通过按键加速的可能性。

坏事:可能只有整秒,没有毫秒。

答案 3 :(得分:0)

TIMEOUT /T x > NUL    

(将X替换为您想要的秒数)

由于最后使用> NUL命令,因此将进行隐藏的倒数,您将看不到倒数/暂停/睡眠/计时器,然后将继续执行下一个命令。这是最好的用法,因为我发现结尾处带有NUL的Timeout命令是最好的,其他许多命令(如Sleep和Pause)都不起作用。 您也可以下载NODEJS以获得更多功能或切换到Powershell。

TIMEOUT /T 5 > NUL

上面的命令将给出5秒钟的定时倒计时,不显示NO,除非您使用CTRL + C,否则按任意键都不会停止计时。