[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[游戏娱乐] 批处理进度条

本帖最后由 jinzeyu 于 2012-1-5 16:56 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. title 进度条 by:金则宇 2011年4月5日
  3. mode con lines=7 cols=55
  4. set z=0
  5. SET ge=0
  6. for /l %%i in (1,1,25) do (
  7.   set "a%%i=  "
  8.   set "c=!c!▉"
  9.   set "d=!d! "
  10. )
  11. :1
  12. set /a z+=4
  13. for /l %%i in (1,1,3) do ping /n 1 127.1>nul
  14. set /a ge+=1
  15. set "a%ge%=▉"
  16. set jdt=
  17. for /l %%i in (1,1,25) do set "jdt=!jdt!!a%%i!"
  18. cls
  19. echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━┓
  20. echo ┃%jdt%┃
  21. echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━┛
  22. echo %d:~1%%z%﹪
  23. if "%jdt%"=="%c%" echo OK^! &pause >nul & exit
  24. goto 1
复制代码
1

评分人数

牛蛙牛蛙!支持支持!

TOP

凑热闹,加一个
  1. @echo off&&setlocal enabledelayedexpansion
  2. set aa=▉
  3. set bb=
  4. set p=0
  5. :ff
  6. echo.
  7. set bb=!bb!!aa!
  8. set /a p+=4
  9. echo !bb!!p!%%
  10. if !p! equ 100 goto ks
  11. ping /n 2 127.1>nul
  12. cls
  13. goto ff
  14. :ks
  15. echo 在这里写你的p&pause>nul
复制代码
目的,学习批处理

TOP

怎样运用到FTP下载上面呀?请大神指教!

TOP

回复 1# jinzeyu


    谢谢了 哦  呵呵   刚好要用呢

TOP

很好,很强大。

TOP

这里人多,补一个进度条,可以左右移动的哦!~
代码不是我的,我只是修改成这样了!
  1. @echo off&setlocal enabledelayedexpansion
  2. ::可以通过修改两个FOR以及str的空格数量来控制图标往前或者往后移动。
  3. ::退格键的意义就是cls的意义,只不过它不是全屏清理,而是往前清理。
  4. echo,
  5. echo.
  6. set "str=                                 《《"
  7. for /l %%a in (1,1,50) do set "t=!t! "
  8. echo.&set /p= <nul
  9. echo.弹簧、钟摆、火车
  10. :lp
  11. for /l %%a in (1,1,20) do (
  12.      set /a a=6*%%a
  13.      for %%b in (!a!) do set "t1=!t:~%%b!"
  14.      set /p=!str:~%%a!<nul
  15.      for /l %%b in (1,1,2000) do echo>nul
  16.      set /p=!t1!<nul
  17. )
  18. goto lp
复制代码
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

不错,学习了~

TOP

好看 就是看不懂

TOP

思维定向,可以做到的(注意替换tab为实际的制表符):
  1. @echo off&setlocal enabledelayedexpansion
  2. set "tab= "
  3. for /l %%a in (1,1,22) do set "t=!t!"
  4. for /l %%a in (1,1,80) do set "tg=!tg! "
  5. echo,&echo     ┌────────────────────┐
  6. echo                                               │
  7. echo     └────────────────────┘
  8. for /l %%a in (1,1,20) do (
  9.     echo %tab%%t% 2>nul&set /p=     │<nul
  10.     set /a a=%%a00/20
  11.     set "a=  !a!"&set "a=!a:~-3!"
  12.     for /l %%b in (1,1,%%a) do set /p=■<nul
  13.     for /l %%b in (1,1,500) do echo>nul
  14.     echo,&echo,&set /p=                      !a!%%<nul
  15.     for /l %%b in (1,1,200) do echo>nul
  16.     if %%a neq 20 set /p=%tg%<nul
  17. )
  18. pause>nul
复制代码
***共同提高***

TOP

27# batman


谢谢。原来我的想法是不现实的。呵呵。非常感谢

TOP

本帖最后由 batman 于 2011-4-17 18:40 编辑

要不就只能这样:
  1. @echo off&setlocal enabledelayedexpansion
  2. set "tab= "
  3. for /l %%a in (1,1,22) do set "t=!t!"
  4. for /l %%a in (1,1,80) do set "tg=!tg! "
  5. echo,&echo     ┌───────────────────┐
  6. echo,&echo     └───────────────────┘
  7. for /l %%a in (1,1,20) do (
  8.     echo %tab%%t% 2>nul&set /p=      <nul
  9.     set /a a=%%a00/20
  10.     set "a=  !a!"&set "a=!a:~-3!"
  11.     for /l %%b in (1,1,%%a) do set /p=■<nul
  12.     for /l %%b in (1,1,1000) do echo>nul
  13.     if %%a neq 20 set /p=%tg%<nul
  14.     echo,&echo,&set /p=                      !a!%%<nul
  15.     for /l %%b in (1,1,1000) do echo>nul
  16.     if %%a neq 20 set /p=%tg%<nul
  17. )
  18. pause>nul
复制代码
***共同提高***

TOP

本帖最后由 batman 于 2011-4-17 18:42 编辑

这样子可以不(注意替换tab):
  1. @echo off&setlocal enabledelayedexpansion
  2. set "tab= "
  3. for /l %%a in (1,1,22) do (
  4.     set "t=!t!"
  5.     if %%a leq 20 set "k=!k!  "
  6. )
  7. for /l %%a in (1,1,80) do set "tg=!tg! "
  8. echo,&echo     ┌────────────────────┐
  9. echo,&echo     └────────────────────┘
  10. echo %tab%%t% 2>nul&set /p=     │<nul
  11. for /l %%a in (1,1,20) do (
  12.     set /a "a=(20-%%a)*2","b=(22-%%a)*6+4",c=%%a00/20
  13.     set "c=  !c!"&set "c=!c:~-3!"
  14.     for %%a in (!a!) do (
  15.         set "str=■!k:~,%%a!│!c!%%"
  16.         set /p=!str!<nul
  17.         for /l %%b in (1,1,500) do echo>nul
  18.         if %%a neq 0 for %%a in (!b!) do set /p=!tg:~,%%a!<nul
  19.     )
  20. )
  21. pause>nul
复制代码
***共同提高***

TOP

20# batman
  1. for /l %%i in (1,1,20) do set/p=▉<nul&ping /n %p% 127.1>nul
复制代码
请问一下,这个同行输出▉,可以跳转其他行后再返回此行接着同行输出吗?不是从行首开始,而是接着这行其他内容后输出!?

TOP

batman的好像没有左右两边的框..

TOP

返回列表