看板 Programming 關於我們 聯絡資訊
※ 引述《antirazin (~ SNSD & KARA ~ )》之銘言: : 上網找了很多但都沒有好的解法 : 所以想請教板友都是怎麼計時的? : 希望執行起來像下面這樣:(假設bat檔名為mtime) : C:>mtime dir C: /s : Execution time: 00:05:03:45 : 之類的 : 麻煩各位了,謝謝~ 網路怪怪的,internet 一直上不去,沒辦法 po code,下面參考一下 ---- @echo off SETLOCAL ENABLEDELAYEDEXPANSION :: 取得參數指令 SET "INSTR=" FOR %%I IN (%*) DO ( SET "INSTR=!INSTR!%%I " ) :: 取得開始時間 SET A=%TIME% :: 開始執行程式 %INSTR% :: 取得結束時間 SET B=%TIME% :: 取得時間詳細資料 SET A_HOUR=%A:~0,2% SET A_MINS=%A:~3,2% SET A_SECS=%A:~6,2% SET A_MSEC=%A:~9,2% SET B_HOUR=%B:~0,2% SET B_MINS=%B:~3,2% SET B_SECS=%B:~6,2% SET B_MSEC=%B:~9,2% :: FOR debug echo. echo START TIME:%A% echo END TIME:%B% :: echo %A_HOUR%:%A_MINS%:%A_SECS%.%A_MSEC% :: echo %B_HOUR%:%B_MINS%:%B_SECS%.%B_MSEC% :: 計算耗時 SET /A C_MSEC=B_MSEC-A_MSEC SET /A C_SECS=B_SECS-A_SECS SET /A C_MINS=B_MINS-A_MINS SET /A C_HOUR=B_HOUR-A_HOUR :: 調整數值 IF %C_MSEC% LSS 0 SET /A C_MSEC+=100 & SET /A C_SECS-=1 IF %C_MSEC% LSS 10 SET C_MSEC=0%C_MSEC% IF %C_SECS% LSS 0 SET /A C_SECS+=60 & SET /A C_MINS-=1 IF %C_SECS% LSS 10 SET C_SECS=0%C_SECS% IF %C_MINS% LSS 0 SET /A C_MINS+=60 & SET /A C_HOUR-=1 IF %C_MINS% LSS 10 SET C_MINS=0%C_MINS% IF %C_HOUR% LSS 0 SET /A C_HOUR+=24 IF %C_HOUR% LSS 10 SET C_HOUR=0%C_HOUR% echo ELAPSE :%C_HOUR%:%C_MINS%:%C_SECS%.%C_MSEC% ENDLOCAL -- YouLoveMe() ? LetItBe() : LetMeFree(); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 180.177.78.41
tropical72:補一下,耗時精度確實有待商議. 180.177.78.41 09/21 02:58
priv:如果只需要取到秒的話倒是無所謂.. 140.113.23.102 09/21 10:13
取到秒是真的無所謂,只是沒研究算出來的 .xx 效果如何。 ※ 編輯: tropical72 來自: 180.177.78.41 (09/21 11:46)
vencin1987:另外寫AP去執行console程式應該較好 114.42.245.27 09/25 03:15
tropical72:耶..這是額外的 bat 沒錯,拿來測其它 180.177.78.41 09/25 03:38
tropical72:console 下執行的結果. 180.177.78.41 09/25 03:38
tropical72:若要額外包成.exe,差別只在計時器吧 ? 180.177.78.41 09/25 03:39
MOONRAKER:要考慮console程式呼叫shell的時間。 61.228.240.149 09/25 20:05
MOONRAKER:不過現在不是問題,以前DOS 3時期偶爾會 61.228.240.149 09/25 20:06
MOONRAKER:很慢。 61.228.240.149 09/25 20:06
tropical72:謝謝M大,請教,依原po之要求,呼叫之時間 180.177.78.41 09/25 21:00
tropical72:應屬無可避免吧?或,不同程式語言,在呼 180.177.78.41 09/25 21:00
tropical72:叫時所佔用時間亦不同? 180.177.78.41 09/25 21:01
MOONRAKER:我也不知道,不過以前因為有注意到這點 59.120.49.163 09/27 12:58
MOONRAKER:我認為用batch計算會比較準,當然那是 59.120.49.163 09/27 12:58
MOONRAKER:很久以前了 59.120.49.163 09/27 12:59
tropical72:謝謝 M 大經驗上的分享 *^_^* 180.177.78.41 09/27 18:48