找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 125109|回复: 36

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

[复制链接]
发表于 2011-4-5 16:04:51 | 显示全部楼层 |阅读模式
本帖最后由 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技术 +1 收起 理由
991016 + 1 厉害

查看全部评分

发表于 2011-4-5 16:19:16 | 显示全部楼层
不错 支持个
 楼主| 发表于 2011-4-5 16:20:43 | 显示全部楼层
终于有人回帖了 内牛满面
发表于 2011-4-5 17:58:28 | 显示全部楼层
不错,学习了~
 楼主| 发表于 2011-4-6 17:05:12 | 显示全部楼层
顶一下 嘿嘿
发表于 2011-4-7 10:42:49 | 显示全部楼层
用一下RANDOM会更好,至于怎么用——可以说用法很多。最简单的PING /N 和它的结合
PS:不管怎么说,先恭喜LZ吧,进行了一次很能好的尝试。
 楼主| 发表于 2011-4-7 17:39:27 | 显示全部楼层
谢谢了饿...
 楼主| 发表于 2011-4-7 17:45:37 | 显示全部楼层
还有 PING /N 怎么和 random组合
发表于 2011-4-13 08:57:33 | 显示全部楼层
高手 佩服 学习学习
发表于 2011-4-13 12:59:16 | 显示全部楼层
效果很好,提点建议吧,可以让用户自定义设置进度条速度及显示信息。最好把这个函数做成子函数,随用随call.
发表于 2011-4-13 13:07:35 | 显示全部楼层
不行呀,我发现它太闪了,而且也不能做成子函数,因为它cls了。
我写的

  1. @echo off
  2. mode con cols=55 lines=25
  3. call :ProcessBar 1 ShowInformation
  4. pause
  5. exit

  6. rem p:间隔 i:进度百分比
  7. :ProcessBar
  8. set p=%1
  9. set info=%2
  10. echo     ┏━━━━━━━━━━━━━━━━━━━━┓
  11. set/p=     ▉<nul
  12. for /l %%i in (1,1,20) do set/p=▉<nul&ping /n %p% 127.1>nul                                       
  13. echo.                       %info%         
  14. echo     ┗━━━━━━━━━━━━━━━━━━━━┛
  15. goto :eof
复制代码
发表于 2011-4-13 14:50:04 | 显示全部楼层
11# jay_16
修改下楼上的代码(加入多行回退):

  1. @echo off&setlocal enabledelayedexpansion
  2. mode con cols=55 lines=25
  3. set "tab=        "&rem 请将此处空格换成实际的制表符
  4. call :ProcessBar 1 ShowInformation
  5. pause>nul
  6. exit

  7. rem p:间隔 i:进度百分比
  8. :ProcessBar
  9. set p=%1
  10. set info=%2
  11. for /l %%a in (1,1,32) do set "k=!k!"
  12. echo     ┏━━━━━━━━━━━━━━━━━━━━┓
  13. echo.
  14. echo     ┗━━━━━━━━━━━━━━━━━━━━┛
  15. echo.                       %info%
  16. echo %tab%%k% 2>nul&set /p= <nul
  17. echo.&set /p=     ▉<nul
  18. for /l %%i in (1,1,20) do set/p=▉<nul&ping /n %p% 127.1>nul                                             
复制代码
 楼主| 发表于 2011-4-13 19:09:29 | 显示全部楼层
不行啊 lss下面的框不显示 ls下面的框在进度条上面 = =
发表于 2011-4-14 00:15:38 | 显示全部楼层
不行啊 lss下面的框不显示 ls下面的框在进度条上面 = =
jinzeyu 发表于 2011-4-13 19:09

你注意到第一个rem的内容不?论坛处理不了制表符(tab)的,所以复制代码后要将tab=后面的空格替换为实际的制表符(tab)。。。
发表于 2011-4-14 09:24:17 | 显示全部楼层
14# batman

效果不是很好,你把它弄成现成吧。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 23:02 , Processed in 0.021677 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表