Цитата Shanser:
посмотри тут, может автор сего творения тебе что-то подскажет »
|
Автор идеи не я, а
amel27. Я лишь слегка доработал ее под свои нужды.
Вот тестовый вариант псевдографического прогрессбара в *.bat файле :
Код:
@Echo Off
Setlocal EnableDelayedExpansion
rem Число символов в прогрессбаре
Set N_Col=79
rem Число иттераций (файлов в моем случае) на 100%
Set cntA=274
rem -----------------------------
Set cnt=0
Echo Обработка запущена
:loop
Call :Work
Call :Bar Обработано
If Not %cnt%==%cntA% GoTo :loop
rem -----------------------------
Echo.
Echo Обработка завершена
Pause>nul
Exit
:Bar
If %cnt%==0 (
For /L %%a In (1,1,%N_Col%) Do Set Line0=!Line0!░
For /L %%a In (1,1,%N_Col%) Do Set Line0=!Line0!
<Nul Set /p X=!Line0!
)
Set /a Inc=((%cnt%+1)*%N_Col%)/%cntA%-(%cnt%*%N_Col%)/%cntA%
If %Inc% GTR 0 For /L %%a In (1,1,%Inc%) Do <Nul Set /p X=█
Set /a cnt+=1
Set /a prsnt=cnt*100/cntA
Title %1 %prsnt%%% файлов: %cnt% из %cntA%
GoTo :EOF
:Work
rem Здесь собственно рабочая процедура
GoTo :EOF