久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

win腳本(bat)也能完的很精彩之一進度條 - 企業(yè)網(wǎng)管討論專版 - 中國網(wǎng)管論壇 - ...

 leekylee 2011-02-10

以下應(yīng)一網(wǎng)友要求寫的進度條配合BAT腳本批量執(zhí)行程序時給出程序的執(zhí)行進度,。

同時變相的處理在腳本中遇到的小數(shù)問題,我在腳本中做的不夠精確,,如果需要更高的精確度,,可以多添加幾次循環(huán),?;貜?fù)該貼中提出的小數(shù)問題 http://bbs./85384

腳本內(nèi)容:

@echo off

title 程序制作"怕瓦落地".歡迎關(guān)注www.BitsCN.com

rem 說明:

rem 變量b為平均值的整數(shù)部分,變量c為平均值的小數(shù)部分,變量hs表示需要執(zhí)行的命令總數(shù)并加1,防止程序進入死鎖.

rem 如果沒有小數(shù)部分,請把變量c賦零值

rem 變量pjump默認(rèn)為1表示在編輯note.txt文件時第一行必須為空.

color 0a

set b=1

set c=0

set /a hs=81

set pjump=1

set a=■

set /a zs=%b%

set /a g=%c%

rem 上面這部分沒什么解釋的,是主要變量的相關(guān)說明,,及賦值,。

:pstart

rem 進度條代碼開始

cls

set a=%a%■

echo.

echo 程序正在安裝中,請等待

echo  ┌─────────────────────────────────────┐

echo    %a% %zs%.%g%%%

echo  └─────────────────────────────────────┘

rem 進度條代碼結(jié)束

rem 上面這部分是在該腳本執(zhí)行中所看到的進度條是如何前進的,。

rem 下面這行是從文件note.txt中讀取預(yù)先編輯好的執(zhí)行命令和參數(shù),關(guān)于for命令的解釋請參考命令本身幫助系統(tǒng).

for /f "delims=, skip=%pjump% tokens=2" %%m in (note.txt) do set pcmd=%%m & goto jisuo

:jisuo

echo "正在執(zhí)行%pcmd%程序"

%pcmd%

set /a pjump=%pjump%+1   

if %pjump%==%hs% goto pexit   ::該句是判斷文件note.txt中有多少條需要執(zhí)行的命令,在腳本的開始部分有說明,需要人為的指出,主要的作用是防止腳本在運行中出現(xiàn)意外,或者進入死鎖.可有可無.

set /a zs=%zs%+%b%

set /a d=%d%+c

set e=%d%

set g=%d%

if %d% geq 10 goto xiaoshu

goto pstart

rem 上面這段是是處理百分比中如果出現(xiàn)小數(shù),也進行粗略的計算,如果想獲得更高的精確度可以按照下面這段代碼去擴展程序.

:xiaoshu

set g=%e:~-1%  ::擴展變量e 并取變量值的最后一個字符并賦值給變量g,如果變量e此時的值為15,那么此時g得到的值是5

set /a zs=%zs%+1

set /a d=%g%

goto pstart

rem 上面這段是計算小數(shù)部分當(dāng)小數(shù)部分壘加和大于等于10時才會執(zhí)行,

:pexit

exit

總的來說該腳本的運行思路是讀取note.txt中預(yù)先編輯的命令和參數(shù)并給予執(zhí)行,每執(zhí)行完一條命令都會在進度條上反映出執(zhí)行進度(該腳本只能處理已知的進度并加已表現(xiàn)).

關(guān)于在進度條中出現(xiàn)的小數(shù).例如 15.3%. bat腳本中,偶還沒有找到能處理小數(shù)的命令,所以只能變相的處理了

處理方法是,把一個小數(shù)拆分成整數(shù)部分和小數(shù)部分并分別加以計算

在該腳本中但小數(shù)部分壘加和大于等于10時就會向整數(shù)部分進1 并做相關(guān)處理步驟.腳本中用朱砂紅標(biāo)記出來的就是.

然后把兩個部分的計算結(jié)果在組合到一起.其實是通過輸出命令來做的用深綠色標(biāo)記出來的就是.并沒有相關(guān)的組合表達式來做這個步驟,因為不需要代入計算.只是用于顯示,足已.

該腳本代碼不長但用到的變量較多,應(yīng)該優(yōu)化的可能以減少多的變量.請仔細閱讀應(yīng)該不難理解.歡迎交流.

待執(zhí)行命令文件(以下文件內(nèi)容為事例文件),,注意:在測試環(huán)境中,復(fù)制下面的內(nèi)容保存為note.txt文件并放在腳本同一目錄即可,。

【轉(zhuǎn)自bbs.bitsCN.com】

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多