Udostępnij za pośrednictwem


New-TimeSpan

Tworzy obiekt TimeSpan.

Składnia

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

Opis

Polecenie cmdlet New-TimeSpan tworzy obiekt TimeSpan, który reprezentuje przedział czasu. Możesz użyć obiektu TimeSpan do dodawania lub odejmowania czasu z obiektów DateTime.

Bez parametrów polecenie New-TimeSpan zwraca obiekt TimeSpan reprezentujący przedział czasu równy zero.

Przykłady

Przykład 1. Tworzenie obiektu TimeSpan dla określonego czasu trwania

To polecenie tworzy obiekt TimeSpan z czasem trwania 1 godziny i 25 minut i zapisuje go w zmiennej o nazwie $TimeSpan. Wyświetla reprezentację obiektu 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

Przykład 2. Tworzenie obiektu TimeSpan dla interwału czasu

W tym przykładzie zostanie utworzony nowy obiekt TimeSpan, który reprezentuje interwał między czasem uruchomienia polecenia a 1 stycznia 2010 r.

To polecenie nie wymaga parametru Start, ponieważ domyślną wartością parametru Start jest bieżąca data i godzina.

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

Przykład 3. Pobieranie daty 90 dni od bieżącej daty

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

Te polecenia zwracają datę 90 dni po bieżącej dacie.

Przykład 4. Odnajdywanie przedziału czasu od czasu zaktualizowania pliku

To polecenie informuje, jak długo minęło od czasu ostatniej aktualizacji pliku pomocy about_Remote. Można użyć tego formatu polecenia w dowolnym pliku lub innym obiekcie, który ma właściwość LastWriteTime.

To polecenie działa, ponieważ parametr StartNew-TimeSpan ma alias LastWriteTime. Podczas potoku obiektu, który ma właściwość LastWriteTime do New-TimeSpan, program PowerShell używa wartości właściwości LastWriteTime jako wartości parametru 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

Parametry

-Days

Określa dni w przedziale czasu. Wartość domyślna to 0.

Typ:Int32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-End

Określa koniec przedziału czasu. Wartość domyślna to bieżąca data i godzina.

Typ:DateTime
Position:1
Domyślna wartość:Current date and time
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Hours

Określa godziny w przedziale czasu. Wartość domyślna to 0.

Typ:Int32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Milliseconds

Określa długość przedziału czasu w milisekundach. Wartość domyślna to 0.

Typ:Int32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Minutes

Określa minuty w przedziale czasu. Wartość domyślna to 0.

Typ:Int32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Seconds

Określa długość przedziału czasu w sekundach. Wartość domyślna to 0.

Typ:Int32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Start

Określa początek przedziału czasu. Wprowadź ciąg reprezentujący datę i godzinę, taki jak "3/15/09" lub obiekt DateTime, taki jak jeden z polecenia Get-Date. Wartość domyślna to bieżąca data i godzina.

Możesz użyć Start lub jego aliasu, LastWriteTime. Alias LastWriteTime umożliwia potokowanie obiektów, które mają właściwość LastWriteTime, taką jak pliki w systemie plików ([IO.FileInfo]), do parametru StartNew-TimeSpan.

Typ:DateTime
Aliasy:LastWriteTime
Position:0
Domyślna wartość:Current date and time
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

DateTime

Do tego polecenia cmdlet można przekazać potok datetime obiektu reprezentującego godzinę rozpoczęcia.

Dane wyjściowe

TimeSpan

To polecenie cmdlet zwraca obiekt reprezentujący przedział czasu.