4.13.39 日時計算
機能
この部品は,指定した日時に対して指定した時間を加減算します。計算後の日時は,指定したフォーマットに従って計算結果(common.calculateResultプロパティ)に格納します。
この部品が前提とするサーバを次に示します。
・実行対象サーバ
この部品を実行する対象となるサーバです。
この部品内のスクリプトでは次に示す処理を行います。
(1)実行対象サーバがWindowsの場合,次のコマンドレットを実行します。
・指定した日時のオブジェクトを取得します。
$Key = Get-Date "入力日時(common.inputDateAndTimeプロパティ)の値"
・上記で取得したオブジェクトに対して指定した時間を加減算します。
Get-Date -Date ($Key).メソッド名.Invoke("計算日時(common.calculateDateAndTimeプロパティ)の値")
-UFormat "フォーマット(common.dateAndTimeFormatプロパティ)の値"
上記コマンドレットのメソッド名は,計算単位(common.calculateUnitプロパティ)の値に応じて異なります。
Get-Dateコマンドレットの詳細については,Microsoftのライブラリ内で記載している箇所を参照してください。
(2)実行対象サーバがUNIXの場合,次のコマンドを実行します。
date -d "入力日時(common.inputDateAndTimeプロパティ)の値
計算日時(common.calculateDateAndTimeプロパティ)の数値
計算単位(common.calculateUnitプロパティ)の値
[ago] ※1
"
"+フォーマット(common.dateAndTimeFormatプロパティ)の値"
※1 計算日時(common.calculateDateAndTimeプロパティ)に負の数を指定した場合に設定されます。
dateコマンドの詳細については,OSのmanコマンドで取得できるコマンド情報を参照してください。
入力日時(common.inputDateAndTimeプロパティ)は「YYYY-MM-DD hh:mm:ss」の形式で指定してください。
フォーマット(common.dateAndTimeFormatプロパティ)について次に示します。
・64文字以内の文字列を指定してください。
・文字列内の変換指定文字は,対応する値に変換されます。変換指定文字以外の文字列は,変換されずにそのまま計算結果(common.calculateResultプロパティ)に格納します。
変換指定文字の例を次に示します。その他の変換指定文字は上記のコマンドレットおよびコマンドのマニュアルを確認してください。
[変換指定文字]
%Y 世紀部分を含めた4桁の西暦年。
%y 西暦の下2桁。世紀部分を含まない年。1桁の場合には前に0を設定する。
%m 月。1桁の場合には前に0を設定する。
%d 日。1桁の場合には前に0を設定する。
%H 24時間表記での時。1桁の場合には前に0を設定する。
%I 12時間表記での時。1桁の場合には前に0を設定する。
%M 分。1桁の場合には前に0を設定する。
%S 秒。1桁の場合には前に0を設定する。
%s 1970-01-01 00:00:00 UTC からの秒数。
利用場面
ファイルやディレクトリを作成する際に,ファイル名やディレクトリ名の識別子として計算した日付を用いたい場合などに使用できます。
前提条件
【実行対象サーバ内前提製品】/【実行対象サーバの稼働OS】の最新のサポート状況については,リリースノートを参照してください。
また、OSおよび製品について略称を用いています。対象とするOSおよび製品については「はじめに」を参照してください。
【実行対象サーバ内前提製品】
なし。
【実行対象サーバの稼働OS】
(1) Windows Server
(2) Red Hat Enterprise Linux Server
(3) Oracle Linux
【実行対象サーバの使用条件】
なし。
注意事項
(1)この部品のプロパティには「"」(ダブルクォーテーション)および「'」(シングルクォーテーション)を含む文字列は指定しないでください。
(2)WindowsとUNIXではコマンドの仕様が異なるため,同じ値を計算日時(common.calculateDateAndTimeプロパティ)に指定しても,実行対象サーバのOSによって計算結果(common.calculateResultプロパティ)が異なることがあります。
バージョン
02.10.00
部品のタグ
Gather OS information,Linux,Windows
タスクログに表示される部品の名称
osCalculateDateAndTime
戻り値
戻り値 |
説明 |
---|---|
0 |
正常 |
27 |
異常(エラー内容はタスクログで確認) |
41 |
異常(部品内でエラーを検知) プロパティ未入力(部品スクリプトでエラーを検知) |
プロパティ一覧
プロパティ一覧を次の表に示します。
プロパティキー |
プロパティ名 |
説明 |
デフォルト値 |
入出力種別 |
必須区分 |
---|---|---|---|---|---|
plugin.destinationHost |
実行対象サーバのホスト名 |
この部品を実行するサーバのホスト名またはIPアドレスを指定します。IPv6アドレスには対応していません。 |
− |
入力 |
○ |
common.inputDateAndTime |
入力日時 |
計算元となる日時を「YYYY-MM-DD hh:mm:ss」形式で指定します。 |
− |
入力 |
○ |
common.calculateUnit |
計算単位 |
入力日時に対して加減算する時間の単位を指定します。"years","months","days","hours","minutes","seconds"のどれかを指定してください。 |
− |
入力 |
○ |
common.calculateDateAndTime |
計算時間 |
入力日時に対して加減算する時間を半角数字で指定します。減算する場合は先頭に"-"を付けてください。 |
− |
入力 |
○ |
common.dateAndTimeFormat |
フォーマット |
計算後の日時を出力するフォーマットを指定します。 |
%Y%m%d%H%M%S |
入力 |
○ |
common.calculateResult |
計算結果 |
計算後の日時がフォーマットにしたがって格納されます。 |
− |
出力 |
△ |
common.returnValue |
部品の戻り値 |
この部品の戻り値が格納されます。 |
− |
出力 |
△ |