gettime

【Tera Term マクロ言語】コマンドリファレンス

gettime 機能

[その他のコマンド]

現在の時刻を得ます。

コマンドライン

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

機能説明

現在の時刻を文字列変数 <strvar><format> に従った形式で格納します。
<strvar>
書式は strftime と同じ物が使えます。

format が省略された場合、格納される形式は "HH:MM:SS" となります。
(<format> に %H:%M:%S を指定したのと同じです)
<format>
バージョン 4.57 以降で利用可能です。

format が指定された gettime は、同じ format が指定された getdate と動作が等しくなります。

format が指定された場合、このコマンドの実行結果はシステム変数 <result> に格納されます。
バージョン 4.58 以降、format が指定されなかった場合は、変数 <result> の値は変更されません。これはバージョン4.56以前との互換性のための仕様変更です。
<timezone>
バージョン 4.74 以降で利用可能です。
バージョン 4.80 以降は、マクロ実行前後でタイムゾーンを復元するようになりました

<timezone> にタイムゾーンを表す文字列を指定すると、タイムゾーンを加味した日付計算が行われます。
<timezone> を指定しない場合はローカルタイムとなります。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<strvar>文字列時刻情報を格納する変数を指定します。
<format>文字列時刻情報のフォーマット (形式) を指定します。
<timezone>文字列タイムゾーンを指定します。

対象バージョン

一部機能は、全てのバージョンで利用可能です。
バージョン 4.80 より変更された機能があります。
バージョン 4.74 より強化された機能があります。
バージョン 4.58 より変更された機能があります。
バージョン 4.57 より強化された機能があります。

戻り値

戻り値として以下の変数が定義されます。
変数名意味
result0正常に値が <strvar> に格納された
1生成された文字列の長さが上限(511文字)を超えた等の理由で、<strvar> への値の格納が正常に行われなかった
2<format> の指定が不正だった
<strvar>文字列指定された形式の現在の時刻情報
<strvar> は、コマンド実行時に指定した任意の文字列です。

関連コマンド

getdate
strftime (MSDNライブラリ)

使用方法

使用例

・現在の時刻をtimestrに格納する場合
; 現在の時刻をtimestrに格納。形式はHH:MM:SS。
gettime timestr
・現在の日時を元にしてログファイル名を生成し、変数 <logfile> に格納する場合
; 現在の日時を元にしてログファイル名を生成し、変数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 で時刻を取得する場合
; GMTで時刻を取得する。
tz="GMT"
gettime s "%Y/%m/%d %H:%M:%S" tz
messagebox s tz

サンプル

サンプルマクロはありません。

備考

バージョンバグ情報備考
対象Fix
4.1054.106マクロコマンドで timezone つきで呼び出すと正しい時刻を返さない問題が修正されました。