getdate

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

getdate 機能

[その他のコマンド]

現在の日付を得ます。

コマンドライン

getdate <strvar> [<format> [<timezone>]]

機能説明

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

<format> が省略された場合、格納される形式は "YYYY-MM-DD" となります。
(<format> に %Y-%m-%d を指定したのと同じ)
[<format>]
バージョン 4.57 以降で利用可能です。

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

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> は、コマンド実行時に指定した任意の文字列です。

関連コマンド

gettime
strftime (MSDNライブラリ)

使用方法

使用例

・現在の日付を datestr に格納する場合
; 現在の日付をdatestrに格納。形式はYYYY-MM-DD。
getdate datestr
・現在の日時を元にしてログファイル名を生成し、変数 logfile に格納する場合
; 現在の日時を元にしてログファイル名を生成し、変数logfileに格納。
; 形式はlog-YYYYMMDD-HHMMSS.txt
getdate logfile "log-%Y%m%d-%H%M%S.txt"
・GMT で時刻を取得する場合
; GMTで時刻を取得する。
tz="GMT"
gettime s "%Y/%m/%d %H:%M:%S" tz
messagebox s tz
・本日の日付を取得する場合
; 本日の日にちを取得する。
gettime s "|%d|%#d|"    ; |07|7| (Today is 7th).
gettime s "|%d|%#d|"    ; |25|25| (Today is 25th).

サンプル

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

備考

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