2013年6月11日火曜日

Windowsのバッチでの経過時間の計測方法

Windowsでのバッチにて、バッチの実行時間を測定したい場合があります。
そんな時に、 バッチでの実装方法をここにメモとして記載したいと思います。

前提条件

  • Windows XP 32ビット

実装プログラム

実装プログラムは以下になります。
    rem SET T=%TIME:/=%
    SET T=%TIME: =0%
    SET H=%T:~0,2%
    SET M=%T:~3,2%
    SET S=%T:~6,2%

    rem --8進対策
    set /a H=1%H%-100
    set /a M=1%M%-100
    set /a S=1%S%-100   

    rem --何らかの処理
    ping localhost -n 10 > nul

    SET T1=%TIME: =0%
    SET H1=%T1:~0,2%
    SET M1=%T1:~3,2%
    SET S1=%T1:~6,2%

    rem --8進対策
    set /a H1=1%H1%-100
    set /a M1=1%M1%-100
    set /a S1=1%S1%-100

    rem --終了時間の計算
    SET /a H2=H1-H

    SET /a M2=M1-M
    if %M2% LSS 0 set /a H2=H2-1
    if %M2% LSS 0 set /a M2=M2+60

    SET /a S2=S1-S
    if %S2% LSS 0 set /a M2=M2-1
    if %S2% LSS 0 set /a S2=S2+60

    echo 開始時間:%T%
    echo 終了時間:%T1%
    echo 経過時間:%H2%:%M2%:%S2%
    
    pause

尚、実行結果は以下のような感じになる。
Windowsのバッチでの経過時間の計測方法のサンプルの結果画面

Written By : // 13:36
Category:

0 コメント:

コメントを投稿

 

About

このブログは筆者の備忘録として色々記載しています。

Blog Archive

Powered by Blogger.