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 物件

此命令會建立 TimeSpan 物件,持續時間為 1 小時 25 分鐘,並將它儲存在名為的 $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-TimeSpan Start 參數具有 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 屬性的物件,例如文件系統[System.Io.FileIO]中的檔案傳送至 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 物件,代表此 Cmdlet 的開始時間。

輸出

TimeSpan

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