当前位置:DOS资源站资料中心批处理教程 → 批处理进度条代码集合 (几个非常实用的)

批处理进度条代码集合 (几个非常实用的)

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2008-4-25 22:37:12

@echo off&title DOS资源站 www.cmdos.net
rem 第一段 

rem 优点:动画效果  缺点:进度单位为4%(视觉效果),若增加一个延时,进度条的刷新率则变的太低.
setlocal enabledelayedexpansion
mode con cols=85 lines=25
color 0a
set j1=—
set j2=\
set j3=|
set j4=/
for /l %%w in (1 1 15) do (
for /l %%d in (1 1 4) do (
cls && echo 正在载入 0%%
echo !j%%d!
for /l %%t in (1 1 399) do echo.>nul
)
)
for /l %%a in (1 1 25) do (
set /a d1=%%a*4-3,d2=%%a-2,d3=%%a*4-1,d4=%%a*4
for /l %%b in (1 1 4) do (
cls && echo 正在载入 !d1!%%
cls && echo 正在载入 !d2!%%
cls && echo 正在载入 !d3!%%
cls && echo 正在载入 !d4!%%
for /l %%x in (1 1 %%a) do (set /p=!j%%b!<nul)
for /l %%t in (1 1 399) do echo.>nul
)
)
for /l %%a in (1 1 20) do (
for /l %%b in (1 1 4) do (
cls && echo 载入完成 100%%
for /l %%x in (1 1 25) do (set /p=!j%%b!<nul)
for /l %%t in (1 1 399) do echo.>nul
)
)
cls
for /l %%t in (1 1 10000) do (echo.>nul)
cls

rem 第二段 


rem 优点:返回的同时,巧妙的起到延时的作用  缺点:暂未发现
cd.>1
attrib 1 +h
for /l %%a in (1 1 50) do (
set /a j1=%%a*2-1,j2=%%a*2
cls && echo 正在载入 !j1!%%
cls && echo 正在载入 !j2!%%
set a=!a!^>&& echo !a!
for /l %%t in (1 1 399) do echo.>nul
set jd2=!jd2!^<
)
set /a j1=0,j2=0
for /l %%a in (50 -1 0) do (
set /a j2=%%a*2,j1=%%a*2-1
if %%a==0 set /a j1=0,j2=0
cls && echo 正在取消 !j2!%%
cls && echo 正在取消 !j1!%%
set /p=!jd2:~0,%%a!<nul
for /l %%t in (1 1 2) do (ping /n 1 127.0.0.1>nul)
)
cls
del /a 1
for /l %%t in (1 1 10000) do (echo.>nul)
cls

rem 第三段 


rem 优点:与众不同,张扬个性  缺点:暂未发现
set jd3=!jd2:^<=^>!
set /a n=50,x=-1
for /l %%a in (50 -1 0) do (
cls && set /a n-=1,x+=1
set /a x1=!x!*2-1,x2=!x!*2
echo 正在载入 !x1!%% && cls && echo 正在载入 !x2!%%
for /l %%b in (!n! -1 1) do set /p= <nul
set /p=!jd3:~%%a,50!<nul
for /l %%t in (1 1 399) do echo.>nul
)
for /l %%t in (1 1 10000) do (echo.>nul)
cls

rem 第四段 

rem 优点:没有cls的进度条,运行流畅,丝般感受,德芙牛奶巧克力  缺点:暂未发现
@echo off
for /l %%i in (1,1,20) do echo.
echo                         win2000正在启动中,请稍候...
echo.
echo. 
set /p a=">=============================================================================="<nul
for /l %%i in (1,1,80) do (
set /p aa=<nul
)
for /l %%i in (1,1,80) do (
set /p aa=^><nul
ping/n 0 127.1 >nul
)
for /l %%t in (1 1 10000) do (echo.>nul)
cls

rem 第五段 

rem 优点:代码简单  缺点:开始和末尾处理不是很好
:st
set v=▉▉▉
set vvv=                                                
set m=50
:a
set /a w+=1
cls
set/a m-=3
set/a n+=1
if %n% gtr 3 set/a m+=2
echo.
echo.
echo  ┌─────────────────────────┐
echo  │!vvv:~0,%n%!!v:~0,%n%!!vvv:~0,%m%!│
echo  └─────────────────────────┘
ping/n 1 127.1>nul
if !n! equ 44 (
for %%a in (m n) do set %%a=
)
if !w! leq 130 goto a
for /l %%t in (1 1 10000) do (echo.>nul)
cls

rem 第六段 

rem 优点:加入伪码,引人思索  缺点:比较普通
@echo %dbg% off
:starthome
cls
set a=^set /p=■%b%^<nul^&ping/n 0 127.1^>nul^&
echo.
echo  程序正在初始化. . .
echo.
echo  ┌──────────────────────────────────────┐
set/p=  <nul&%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%
echo   100%%
echo  └──────────────────────────────────────┘
for /l %%t in (1 1 10000) do (echo.>nul)
cls