如何编写将在命令提示符的标题中创建进度条的代码?

时间:2016-10-20 17:34:28

标签: batch-file

以下是我已经尝试过的内容。如果可能的话,我也希望让它足够缓慢以使进度条更新显而易见,而不是仅仅跳到100%,但足够快以至于更新命令在输出中不明显< / p>

color 0a
%n=0
:start
if /L %n <100 (
%n+1=%n
title %n
goto start
)
else (
go to end
)
:end
echo finished

我收到了this error,我不明白它的说法以及它为什么不起作用。请注意,我在记事本中写了这个并在Windows上将其作为批处理文件运行。

1 个答案:

答案 0 :(得分:2)

这是一个让你有动力的例子。

@Echo Off
SetLocal EnableDelayedExpansion
Set "bar="
For /L %%a In (1,1,48) Do Set "bar=!bar!>"
Set "n=0"
For /L %%a In (1,1,23) Do Set/A n+=1
Set "i=0"
Echo( Processing files:
For /L %%a In (1,1,23) Do (
    Set/A i+=1, percent=i*100/n, barLen=48*percent/100
    For %%b In (!barLen!) Do Title !percent!%%  !bar:~,%%b!
    Echo( !i!- File%%a
    Timeout 1 1>Nul)
Title Press any key to exit . . .
Timeout -1 1>Nul

运行它然后尝试解决它。​​