批处理字符串操作的进度条
问题描述:
这里是我的代码,(我试图做一个进度条,但失败了)。 http://pastebin.com/JpUT3QvY 我得到这个作为输出:bar:〜0,1 bar:〜0,2 bar:〜0,3 etc等..我想要它去:*, **, ***
等。基本上增加星号1每1秒。 任何帮助非常感谢,我尝试了许多不同的结构,但失败了。 现在我需要继续写,所以这个过滤器可以接受我的问题,因为它希望我使用适当的语法写更多,现在你可以停止阅读,因为这是完全不相关的问题。批处理字符串操作的进度条
@echo off & setlocal enabledelayedexpansion
set bar=**********
set cnt=0
:LOOP
cls
set /A cnt+=1
echo.Progress:!bar:~0,%cnt%!
ping -n 1 www.google.com > nul 2>&1
if "%cnt%" NEQ 10 goto :LOOP
echo.finished.
pause > nul
exit /b
答
试试这个:
@echo off & setlocal enabledelayedexpansion
set "bar=**********"
set /a cnt=0
:LOOP
cls
set /A cnt+=1
SET "progressbar=!bar:~0,%cnt%!"
ECHO(Progress:%progressbar%
ping -n 1 www.google.com > nul 2>&1
if %cnt% NEQ 10 goto :LOOP
ECHO(finished.
REM example without CLS
<NUL set/p "=Progress:"
:LOOPING
<NUL set/p"=*"
ping -n 1 www.google.com > nul 2>&1
SET /a count+=1
if %count% NEQ 10 goto :LOOPING
ECHO(&ECHO(finished.
+0
山猫............ – yoman
你的代码需要去这里,而不是异地。期望我们离开StackOverflow,到别的地方去看看你真正要问的东西,然后回到这里试图回答你是不现实的。请编辑您的问题,并将代码放入您的问题中,并花时间正确格式化。 [帮助]页面有更多关于如何在这里提问的信息。 (如果你这样做,它会停止向你要求更多,这意味着你不必浪费时间和你发布的噪音。如果你想参加这里,请遵守这里的指导。)谢谢。 –