2013-06-21 50 views
1

這裏是我的代碼,(我試圖做一個進度條,但失敗了)。 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 
+2

你的代碼需要去這裏,而不是異地。期望我們離開StackOverflow,到別的地方去看看你真正要問的東西,然後回到這裏試圖回答你是不現實的。請編輯您的問題,並將代碼放入您的問題中,並花時間正確格式化。 [幫助]頁面有更多關於如何在這裏提問的信息。 (如果你這樣做,它會停止向你要求更多,這意味着你不必浪費時間和你發佈的噪音。如果你想參加這裏,請遵守這裏的指導。)謝謝。 –

回答

3

試試這個:

@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