次の方法で共有


New-TimeSpan

TimeSpan オブジェクトを作成します。

構文

New-TimeSpan
   [[-Start] <DateTime>]
   [[-End] <DateTime>]
   [<CommonParameters>]
New-TimeSpan
   [-Days <Int32>]
   [-Hours <Int32>]
   [-Minutes <Int32>]
   [-Seconds <Int32>]
   [<CommonParameters>]

説明

New-TimeSpan コマンドレットは、時間間隔を表す TimeSpan オブジェクトを作成します。 TimeSpan オブジェクトを使用して、DateTime オブジェクトから時間を加算または減算できます。

パラメーターを指定しない場合、 New-TimeSpan コマンドは、0 の時間間隔を表す TimeSpan オブジェクトを返します。

例 1: 指定した期間の TimeSpan オブジェクトを作成する

このコマンドは、期間が 1 時間 25 分の TimeSpan オブジェクトを作成し、 $TimeSpanという名前の変数に格納します。 TimeSpan オブジェクトの表現が表示されます。

$TimeSpan = New-TimeSpan -Hours 1 -Minutes 25
$TimeSpan

Days              : 0
Hours             : 1
Minutes           : 25
Seconds           : 0
Milliseconds      : 0
Ticks             : 51000000000
TotalDays         : 0.0590277777777778
TotalHours        : 1.41666666666667
TotalMinutes      : 85
TotalSeconds      : 5100
TotalMilliseconds : 5100000

例 2: 時間間隔の TimeSpan オブジェクトを作成する

次の使用例は、コマンドが実行されてから 2010 年 1 月 1 日までの間隔を表す新しい TimeSpan オブジェクトを作成します。

Start パラメーターの既定値は現在の日時であるため、このコマンドでは Start パラメーターは必要ありません。

New-TimeSpan -End (Get-Date -Year 2010 -Month 1 -Day 1)

例 3: 現在の日付から 90 日間の日付を取得する

$90days = New-TimeSpan -Days 90
(Get-Date) + $90days

これらのコマンドは、現在の日付から 90 日後の日付を返します。

例 4: ファイルが更新されてから TimeSpan を検出する

このコマンドは、 about_remote ヘルプ ファイルが最後に更新されてからの時間を示します。 このコマンド形式は、任意のファイル、または LastWriteTime プロパティを持つその他のオブジェクトで使用できます。

このコマンドは、New-TimeSpanStart パラメーターに LastWriteTime のエイリアスがあるために機能します。 LastWriteTime プロパティを持つオブジェクトをパイプ処理してNew-TimeSpanすると、PowerShell は LastWriteTime プロパティの値を Start パラメーターの値として使用します。

Get-ChildItem $PSHOME\en-us\about_remote.help.txt | New-TimeSpan

Days              : 321
Hours             : 21
Minutes           : 59
Seconds           : 22
Milliseconds      : 312
Ticks             : 278135623127728
TotalDays         : 321.916230471907
TotalHours        : 7725.98953132578
TotalMinutes      : 463559.371879547
TotalSeconds      : 27813562.3127728
TotalMilliseconds : 27813562312.7728

パラメーター

-Days

期間の日数を指定します。 既定値は0です。

型:Int32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-End

期間の終了を指定します。 既定値は、現在の日付と時刻です。

型:DateTime
配置:1
規定値:Current date and time
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Hours

期間の時間を指定します。 既定値はゼロです。

型:Int32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Minutes

期間の分数を指定します。 既定値は0です。

型:Int32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Seconds

期間の長さを秒単位で指定します。 既定値は0です。

型:Int32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Start

期間の開始を指定します。 "3/15/09" や DateTime オブジェクトなど、 Get-Date コマンドの日時を表す文字列を入力します。 既定値は、現在の日付と時刻です。

Start またはそのエイリアスである LastWriteTime を使用できます。 LastWriteTime エイリアスを使用すると、ファイル システム [System.Io.FileIO]内のファイルなど、LastWriteTime プロパティを持つオブジェクトを、New-TimeSpanStart パラメーターにパイプできます。

型:DateTime
Aliases:LastWriteTime
配置:0
規定値:Current date and time
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

入力

DateTime

開始時刻を表す DateTime オブジェクトをこのコマンドレットにパイプできます。

出力

TimeSpan

このコマンドレットは、期間を表すオブジェクトを返します。