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 プロパティを持つ他のオブジェクトで使用できます。

このコマンドは、 Start パラメーターの New-TimeSpan エイリアスが 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 です。

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-End

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

Type:DateTime
Position:1
Default value:Current date and time
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Hours

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

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Minutes

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

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Seconds

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

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Start

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

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

Type:DateTime
Aliases:LastWriteTime
Position:0
Default value:Current date and time
Required:False
Accept pipeline input:True
Accept wildcard characters:False

入力

DateTime

開始時刻New-TimeSpanを表す DateTime オブジェクトをパイプ処理できます。

出力

TimeSpan

New-TimeSpan は、期間を表すオブジェクトを返します。