共用方式為


New-TimeSpan

建立 TimeSpan 物件。

Syntax

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

Description

Cmdlet New-TimeSpan 會建立代表時間間隔的 TimeSpan 物件。 您可以使用 TimeSpan 物件加上或減去 DateTime 物件的時間。

如果沒有參數, New-TimeSpan 命令會傳回代表零時間間隔的 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 物件

此範例建立一個新的 TimeSpan 物件,代表命令執行時間和 2010 年 1 月 1 日之間的間隔。

此命令不需要 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。

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」 或 DateTime 物件,例如命令中的 Get-Date 字串。 預設值為目前日期和時間。

您可以使用 Start 或其別名 LastWriteTimeLastWriteTime 別名可讓您使用管線將具有 LastWriteTime 屬性的物件傳送至 的 Start 參數New-TimeSpan,例如文件系統[System.Io.FileIO]中的檔案。

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

輸入

DateTime

您可以使用管線將代表開始時間的 DateTime 物件傳送至此 Cmdlet。

輸出

TimeSpan

此 Cmdlet 會傳回代表時間範圍的物件。