# gettime

現在の時刻を得る。

    gettime <strvar> [<format> [<timezone>]]

## 解説

現在の時刻を文字列変数 <strvar> に <format> に従った形式で格納する。書式は strftime と同じ物が使える。
formatが省略された場合、格納される形式は"HH:MM:SS"となる。(<format> に %H:%M:%S を指定したのと同じ)

formatが指定されたgettimeは、同じformatが指定されたgetdateと動作が等しくなる。
<timezone> にタイムゾーンを表す文字列を指定すると、タイムゾーンを加味した日付計算が行われる。 <timezone> を指定しない場合はローカルタイムとなる。

formatが指定された場合、このコマンドの実行結果はシステム変数 result に格納される。 formatが指定されなかった場合は、変数 result の値は変更されない。 変数 result の値の意味は以下のとおり。

値 | 意味
--- | ---
0 | 正常に値が <strvar> に格納された。
1 | 生成された文字列の長さが上限(511文字)を超えた等の理由で、<strvar> への値の格納が正常に行われなかった。
2 | <format> の指定が不正である。

## 例

    ;現在の時刻をtimestrに格納。形式はHH:MM:SS。
    gettime timestr

    ;現在の日時を元にしてログファイル名を生成し、変数logfileに格納。
    ;形式はlog-YYYYMMDD-HHMMSS.txt
    gettime logfile "log-%Y%m%d-%H%M%S.txt"
    changedir 'C:\Test'
    logopen logfile 0 0
    logwrite 'test data'
    logclose

    ;GMTで時刻を取得する。
    tz="GMT"
    gettime s "%Y/%m/%d %H:%M:%S" tz
    messagebox s tz

## 参照

- getdate
- strftime (MSDNライブラリ)