New-TimeSpan

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

構文

New-TimeSpan
   [[-Start] <DateTime>]
   [[-End] <DateTime>]
   [<CommonParameters>]
New-TimeSpan
   [-Days <Int32>]
   [-Hours <Int32>]
   [-Minutes <Int32>]
   [-Seconds <Int32>]
   [-Milliseconds <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 プロパティを持つオブジェクトをパイプ処理する場合、PowerShell は LastWriteTime プロパティの値を Start パラメーターの値として使用します。New-TimeSpan

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

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

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

-Milliseconds

時間スパンの長さをミリ秒単位で指定します。 既定値は0です。

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" などの日付と時刻を表す文字列や、コマンドの Get-Date DateTime オブジェクトなどを入力します。 既定値は、現在の日付と時刻です。

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

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

入力

DateTime

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

出力

TimeSpan

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