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

[特效代码] 求批处理进度条

[复制链接]
发表于 2018-12-26 14:21:49 | 显示全部楼层 |阅读模式
进度条,60秒减少一格,10分钟减完
代码如下,怎么调试也不显示进度条
求大神帮忙
  1. @echo off&setlocal enabledelayedexpansion
  2. mode con cols=113 lines=20 &color 9f
  3. set a=■■■■■■■■■■
  4. for /l %%i in (600,-1,1) do (
  5. cls
  6. set /a n=%%i%60
  7. set /a m=60
  8. if !n! geq 60 set /a m-=1
  9. echo After %%i seconds ,start thunder
  10. echo !a:~-%m%!
  11. ping /n 2 127.1 >nul
  12. )
复制代码
发表于 2018-12-26 15:54:08 | 显示全部楼层
发表于 2018-12-26 17:35:19 | 显示全部楼层
  1. @echo off&setlocal enabledelayedexpansion
  2. mode con cols=113 lines=20 &color 9f
  3. set "bar=■■■■■■■■■■"

  4. for /l %%i in (600,-1,0) do (
  5.         if %%i neq 600 (set/a "num=%%i%%60")
  6.         if defined num if !num! equ 0 set bar=!bar:~,-1!
  7.         cls
  8.         echo After %%i seconds ,start thunder
  9.         echo;!bar!
  10.         ping /n 2 127.1 >nul
  11. )
  12. pause
复制代码
发表于 2019-1-5 22:20:34 | 显示全部楼层
本帖最后由 SQYSQYSQY 于 2019-1-5 22:21 编辑

回复 1# xiaoguren
  1. @echo off&setlocal enabledelayedexpansion
  2. mode con cols=113 lines=20 &color 9f
  3. set "a=■■■■■■■■■■"
  4. for /l %%a in (600 -1 1) do (
  5. set /a "b=(%%a+59)/60"
  6. cls
  7. echo After %%a seconds ,start thunder
  8. for %%b in (!b!) do echo !a:~0,%%b!
  9. ping -n 2 127.1 >nul
  10. )
  11. cls
  12. echo After 0 seconds ,start thunder
  13. pause >nul
复制代码
我调试过的,没问题
发表于 2020-5-12 13:23:57 | 显示全部楼层
我这有一个不用开启变量延迟的方法。
:start
cls
set a=10
set b=■■■■■■■■■■
:jindu
cls
set /a a=a-1
if "%a%"=="9" set b=■■■■■■■■■
if "%a%"=="8" set b=■■■■■■■■
if "%a%"=="7" set b=■■■■■■■
if "%a%"=="6" set b=■■■■■■
if "%a%"=="5" set b=■■■■■
if "%a%"=="4" set b=■■■■
if "%a%"=="3" set b=■■■
if "%a%"=="2" set b=■■
if "%a%"=="1" set b=■
if "%a%"=="0" goto kaishi
echo 还剩%a%秒
echo %b%
ping /n 2 127.0.0.1>nul
goto jindu
已测试,没问题。
发表于 2020-5-12 13:26:32 | 显示全部楼层
回复 5# Zhou.
说错了!
:start
cls
set a=10
set b=■■■■■■■■■■
:jindu
cls
set /a a=a-1
if "%a%"=="9" set b=■■■■■■■■■
if "%a%"=="8" set b=■■■■■■■■
if "%a%"=="7" set b=■■■■■■■
if "%a%"=="6" set b=■■■■■■
if "%a%"=="5" set b=■■■■■
if "%a%"=="4" set b=■■■■
if "%a%"=="3" set b=■■■
if "%a%"=="2" set b=■■
if "%a%"=="1" set b=■
if "%a%"=="0" goto kaishi
echo 还剩%a%秒
echo %b%
ping /n 2 127.0.0.1>nul
goto jindu

:kaishi
echo 成功!
pause
exit
发表于 2020-5-12 13:27:34 | 显示全部楼层
回复 6# Zhou.


    记得前面加上@echo off
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 19:24 , Processed in 0.019924 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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