Get-Date

Ruft das aktuelle Datum und die Uhrzeit ab.

Syntax

Get-Date
   [[-Date] <DateTime>]
   [-Year <Int32>]
   [-Month <Int32>]
   [-Day <Int32>]
   [-Hour <Int32>]
   [-Minute <Int32>]
   [-Second <Int32>]
   [-Millisecond <Int32>]
   [-DisplayHint <DisplayHintType>]
   [-Format <String>]
   [-AsUTC]
   [<CommonParameters>]
Get-Date
   [[-Date] <DateTime>]
   [-Year <Int32>]
   [-Month <Int32>]
   [-Day <Int32>]
   [-Hour <Int32>]
   [-Minute <Int32>]
   [-Second <Int32>]
   [-Millisecond <Int32>]
   [-DisplayHint <DisplayHintType>]
   -UFormat <String>
   [<CommonParameters>]
Get-Date
   -UnixTimeSeconds <Int64>
   [-Year <Int32>]
   [-Month <Int32>]
   [-Day <Int32>]
   [-Hour <Int32>]
   [-Minute <Int32>]
   [-Second <Int32>]
   [-Millisecond <Int32>]
   [-DisplayHint <DisplayHintType>]
   [-Format <String>]
   [-AsUTC]
   [<CommonParameters>]
Get-Date
   -UnixTimeSeconds <Int64>
   [-Year <Int32>]
   [-Month <Int32>]
   [-Day <Int32>]
   [-Hour <Int32>]
   [-Minute <Int32>]
   [-Second <Int32>]
   [-Millisecond <Int32>]
   [-DisplayHint <DisplayHintType>]
   -UFormat <String>
   [<CommonParameters>]

Beschreibung

Das Get-Date Cmdlet ruft ein DateTime-Objekt ab, das das aktuelle Datum oder ein datum darstellt, das Sie angeben. Get-Date kann das Datum und die Uhrzeit in mehreren .NET- und UNIX-Formaten formatieren. Sie können Get-Date eine Datums- oder Uhrzeitzeichenzeichenfolge generieren und dann an andere Cmdlets oder Programme senden.

Get-Date Verwendet die Kultureinstellungen des Computers, um zu bestimmen, wie die Ausgabe formatiert ist. Um die Einstellungen Ihres Computers anzuzeigen, verwenden Sie (Get-Culture).DateTimeFormat.

Beispiele

Beispiel 1: Abrufen des aktuellen Datums und der aktuellen Uhrzeit

In diesem Beispiel wird Get-Date das aktuelle Systemdatum und die aktuelle Uhrzeit angezeigt. Die Ausgabe befindet sich in den Long-Date- und Long-Time-Formaten.

Get-Date

Tuesday, June 25, 2019 14:53:32

Beispiel 2: Abrufen von Elementen des aktuellen Datums und der aktuellen Uhrzeit

In diesem Beispiel wird gezeigt, wie Get-Date Sie entweder das Datums- oder Uhrzeitelement abrufen. Der Parameter verwendet die Argumente Datum, Uhrzeit oder DateTime.

Get-Date -DisplayHint Date

Tuesday, June 25, 2019

Get-Date verwendet den DisplayHint-Parameter mit dem Argument "Date ", um nur das Datum abzurufen.

Beispiel 3: Abrufen des Datums und der Uhrzeit mit einem .NET-Formatbezeichner

In diesem Beispiel wird ein .NET-Formatbezeichner verwendet, um das Ausgabeformat anzupassen. Die Ausgabe ist ein String-Objekt .

Get-Date -Format "dddd MM/dd/yyyy HH:mm K"

Tuesday 06/25/2019 16:17 -07:00

Get-Date verwendet den Parameter Format , um mehrere Formatbezeichner anzugeben.

Die in diesem Beispiel verwendeten .NET-Formatbezeichner werden wie folgt definiert:

Bezeichner Definition
dddd Tag der Woche – vollständiger Name
MM Monatsnummer
dd Tag des Monats - 2 Ziffern
yyyy Jahr im 4-stelligen Format
HH:mm Zeit im 24-Stunden-Format - keine Sekunden
K Zeitzonenversatz von Universeller Zeitkoordinate (UTC)

Weitere Informationen zu .NET-Formatspezifikationen finden Sie unter Benutzerdefinierte Datums- und Uhrzeitformatzeichenfolgen.

Beispiel 4: Abrufen des Datums und der Uhrzeit mit einem UFormat-Zeichner

In diesem Beispiel werden mehrere UFormat-Formatbezeichner verwendet, um das Format der Ausgabe anzupassen. Die Ausgabe ist ein String-Objekt .

Get-Date -UFormat "%A %m/%d/%Y %R %Z"

Tuesday 06/25/2019 16:19 -07

Get-Date verwendet den UFormat-Parameter , um mehrere Formatbezeichner anzugeben.

Die in diesem Beispiel verwendeten UFormat-Formatbezeichner werden wie folgt definiert:

Bezeichner Definition
%A Tag der Woche – vollständiger Name
%m Monatsnummer
%d Tag des Monats - 2 Ziffern
%Y Jahr im 4-stelligen Format
%R Zeit im 24-Stunden-Format - keine Sekunden
%Z Zeitzonenversatz von Universeller Zeitkoordinate (UTC)

Eine Liste der gültigen UFormat-Formatbezeichner finden Sie im Abschnitt "Notizen ".

Beispiel 5: Abrufen des Datumstags des Jahres

In diesem Beispiel wird eine Eigenschaft verwendet, um den numerischen Tag des Jahres abzurufen.

Der gregorianische Kalender verfügt über 365 Tage, mit Ausnahme von Schaltjahren, die 366 Tage haben. Beispiel: 31. Dezember 2020 ist Tag 366.

(Get-Date -Year 2020 -Month 12 -Day 31).DayOfYear

366

Get-Date verwendet drei Parameter, um das Datum anzugeben: Jahr, Monat und Tag. Der Befehl wird mit Klammern umgebrochen, sodass das Ergebnis durch die DayofYear-Eigenschaft ausgewertet wird.

Beispiel 6: Überprüfen, ob ein Datum für die Sommerzeit angepasst wird

In diesem Beispiel wird eine boolesche Methode verwendet, um zu überprüfen, ob ein Datum durch die Sommerzeit angepasst wird.

$DST = Get-Date
$DST.IsDaylightSavingTime()

True

Eine Variable speichert $DST das Ergebnis von Get-Date. $DST verwendet die IsDaylightSavingTime-Methode , um zu testen, ob das Datum für die Sommerzeit angepasst ist.

Beispiel 7: Konvertieren der aktuellen Uhrzeit in UTC-Zeit

In diesem Beispiel wird die aktuelle Uhrzeit in UTC-Zeit konvertiert. Der UTC-Offset für das Gebietsschema des Systems wird verwendet, um die Zeit zu konvertieren. Eine Tabelle im Abschnitt "Notizen " enthält die gültigen UFormat-Formatbezeichner .

Get-Date -UFormat "%A %B/%d/%Y %T %Z"
$Time = Get-Date
$Time.ToUniversalTime()

Wednesday June/26/2019 10:45:26 -07

Wednesday, June 26, 2019 17:45:26

Get-Date verwendet den UFormat-Parameter mit Formatbezeichnern, um das aktuelle Systemdatum und die aktuelle Uhrzeit anzuzeigen. Der Formatbezeichner %Z stellt den UTC-Offset von -07 dar.

Die $Time Variable speichert das aktuelle Systemdatum und die aktuelle Uhrzeit. $Time verwendet die ToUniversalTime() -Methode, um die Zeit basierend auf dem UTC-Offset des Computers zu konvertieren.

Beispiel 8: Erstellen eines Zeitstempels

In diesem Beispiel erstellt ein Formatbezeichner ein Timestamp String-Objekt für einen Verzeichnisnamen. Der Zeitstempel enthält das Datum, die Uhrzeit und den UTC-Offset.

$timestamp = Get-Date -Format o | ForEach-Object { $_ -replace ":", "." }
New-Item -Path C:\Test\$timestamp -Type Directory

Directory: C:\Test

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----         6/27/2019    07:59                2019-06-27T07.59.24.4603750-07.00

Die $timestamp Variable speichert die Ergebnisse eines Get-Date Befehls. Get-Date verwendet den Formatparameter mit dem Formatbezeichner von Kleinbuchstaben o , um ein Timestamp String-Objekt zu erstellen. Das Objekt wird an die Pipeline gesendet.ForEach-Object Ein ScriptBlock enthält die Variable, die das $_ aktuelle Pipelineobjekt darstellt. Die Zeitstempelzeichenfolge wird durch Doppelpunkt getrennt, die durch Zeiträume ersetzt werden.

New-Item verwendet den Pfadparameter , um den Speicherort für ein neues Verzeichnis anzugeben. Der Pfad enthält die $timestamp Variable als Verzeichnisname. Der Parameter "Type " gibt an, dass ein Verzeichnis erstellt wird.

Beispiel 9: Konvertieren eines Unix-Zeitstempels

In diesem Beispiel wird eine Unix-Zeitangabe (dargestellt durch die Anzahl von Sekunden seit dem 1970-01-01 0:00:00) in DateTime konvertiert.

Get-Date -UnixTimeSeconds 1577836800

Wednesday, January 01, 2020 12:00:00 AM

Beispiel 10: Zurückgeben eines Datumswerts, der als UTC interpretiert wird

In diesem Beispiel wird gezeigt, wie ein Datumswert als UTC-Äquivalent interpretiert wird. Für das Beispiel wird dieser Computer auf "Pacific Standard Time" festgelegt. Gibt standardmäßig Get-Date Werte für diese Zeitzone zurück. Verwenden Sie den AsUTC-Parameter , um den Wert in die UTC-Äquivalentzeit zu konvertieren.

PS> Get-TimeZone

Id                         : Pacific Standard Time
DisplayName                : (UTC-08:00) Pacific Time (US & Canada)
StandardName               : Pacific Standard Time
DaylightName               : Pacific Daylight Time
BaseUtcOffset              : -08:00:00
SupportsDaylightSavingTime : True

PS> (Get-Date -Date "2020-01-01T00:00:00").Kind
Unspecified

PS> Get-Date -Date "2020-01-01T00:00:00"

Wednesday, January 1, 2020 12:00:00 AM

PS> (Get-Date -Date "2020-01-01T00:00:00" -AsUTC).Kind
Utc

PS> Get-Date -Date "2020-01-01T00:00:00" -AsUTC

Wednesday, January 1, 2020 8:00:00 AM

Parameter

-AsUTC

Konvertiert den Datumswert in die entsprechende Uhrzeit in UTC.

Dieser Parameter wurde in PowerShell 7.1 eingeführt.

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

-Date

Gibt ein Datum und eine Uhrzeit an. Die Uhrzeit ist optional und wenn nicht angegeben, gibt 00:00:00 zurück.

Geben Sie das Datum und die Uhrzeit in ein Format ein, das standard für das Systemgebietsschema ist.

Beispiel: in US-Englisch:

Get-Date -Date "6/25/2019 12:30:22" gibt Dienstag, 25. Juni 2019 12:30:22 zurück

Type:DateTime
Aliases:LastWriteTime
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Day

Gibt den angezeigten Tag des Monats an. Geben Sie einen Wert zwischen 1 und 31 ein.

Wenn der angegebene Wert größer als die Anzahl von Tagen in einem Monat ist, fügt PowerShell die Anzahl der Tage zum Monat hinzu. Zeigt beispielsweise Get-Date -Month 2 -Day 31den 3. März und nicht den 31. Februar an.

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

-DisplayHint

Bestimmt, welche Elemente von Datum und Uhrzeit angezeigt werden.

Die akzeptierten Werte sind wie folgt:

  • Datum: Zeigt nur das Datum an
  • Uhrzeit: Zeigt nur die Uhrzeit an.
  • DateTime: Zeigt das Datum und die Uhrzeit an.
Type:DisplayHintType
Accepted values:Date, Time, DateTime
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Format

Zeigt das Datum und die Uhrzeit im Microsoft .NET Framework-Format an, das durch den Formatbezeichner angegeben wird. Der Parameter Format gibt ein String-Objekt aus.

Eine Liste der verfügbaren .NET-Formatbezeichner finden Sie unter Benutzerdefinierte Datums- und Uhrzeitformatzeichenfolgen.

Wenn der Parameter Format verwendet wird, ruft nur die Eigenschaften des DateTime-Objekts ab, Get-Date die zum Anzeigen des Datums erforderlich sind. Folglich stehen einige der Eigenschaften und Methoden der DateTime-Objekte möglicherweise nicht zur Verfügung.

Ab PowerShell 5.0 können Sie die folgenden zusätzlichen Formate als Werte für den Parameter Format verwenden.

  • FileDate. Eine datei- oder pfadfreundliche Darstellung des aktuellen Datums in der lokalen Uhrzeit. Das Format ist yyyyMMdd (Groß-/Kleinschreibung mit einer 4-stelligen Jahres-, 2-stelligen Monats- und 2-stelligen Tageszahl). Beispiel: 20190627.

  • FileDateUniversal. Eine datei- oder pfadfreundliche Darstellung des aktuellen Datums in der universellen Uhrzeit (UTC). Das Format ist yyyyMMddZ (Groß-/Kleinschreibung, bei Verwendung eines 4-stelligen Jahres, eines 2-stelligen Monats, eines 2-stelligen Tages und des Buchstabens Z als UTC-Indikator). Beispiel: 20190627Z.

  • FileDateTime. Eine datei- oder pfadfreundliche Darstellung des aktuellen Datums und der aktuellen Uhrzeit in der lokalen Uhrzeit im 24-Stunden-Format. Das Format ist yyyyMMddTHHmmssffff (Groß-/Kleinschreibung, bei Verwendung eines 4-stelligen Jahres, 2-stelliger Monat, 2-stelliger Tag, als Zeittrennzeichen, T 2-stellige Stunde, 2-stellige Sekunde und 4-stellige Millisekunden). Beispiel: 20190627T0840107271.

  • FileDateTimeUniversal. Eine datei- oder pfadfreundliche Darstellung des aktuellen Datums und der aktuellen Uhrzeit in universaler Zeit (UTC) im 24-Stunden-Format. Das Format ist yyyyMMddTHHmmssffffZ (Groß-/Kleinschreibung, bei Verwendung eines 4-stelligen Jahres, 2-stelliger Monat, 2-stelliger Tag, Buchstaben als Zeittrennzeichen, T 2-stellige Stunde, 2-stellige Sekunde, 4-stellige Millisekunden und der Buchstabe Z als UTC-Indikator). Beispiel: 20190627T1540500718Z.

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

-Hour

Gibt die angezeigte Stunde an. Geben Sie einen Wert von 0 bis 23 ein.

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

-Millisecond

Gibt die Millisekunden im Datum an. Geben Sie einen Wert von 0 bis 999 ein.

Dieser Parameter wurde in PowerShell 3.0 eingeführt.

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

-Minute

Gibt die angezeigte Minute an. Geben Sie einen Wert von 0 bis 59 ein.

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

-Month

Gibt den angezeigten Monat an. Geben Sie einen Wert von 1 bis 12 ein.

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

-Second

Gibt die angezeigte Sekunde an. Geben Sie einen Wert von 0 bis 59 ein.

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

-UFormat

Zeigt das Datum und die Uhrzeit im UNIX-Format an. Der UFormat-Parameter gibt ein Zeichenfolgenobjekt aus.

UFormat-Bezeichner werden einem Prozentzeichen (%z. B. , %m, %dund ) %Yvorangestellt. Der Abschnitt "Notizen " enthält eine Tabelle mit gültigen UFormat-Bezeichnern.

Wenn der UFormat-Parameter verwendet wird, ruft nur die Eigenschaften des DateTime-Objekts ab, Get-Date die zum Anzeigen des Datums erforderlich sind. Folglich stehen einige der Eigenschaften und Methoden der DateTime-Objekte möglicherweise nicht zur Verfügung.

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

-UnixTimeSeconds

Datum und Uhrzeit in Sekunden seit dem 1. Januar 1970, 0:00:00 Uhr.

Dieser Parameter wurde in PowerShell 7.1 eingeführt.

Type:Int64
Aliases:UnixTime
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Year

Gibt das angezeigte Jahr an. Geben Sie einen Wert von 1 bis 9999 ein.

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

Eingaben

Pipeline input

Get-Date akzeptiert die Pipelineeingabe. Beispiel: Get-ChildItem | Get-Date.

Ausgaben

System.DateTime or System.String

Get-Date gibt ein DateTime-Objekt zurück, außer wenn die Parameter "Format " und "UFormat " verwendet werden. Die Parameter "Format " oder "UFormat " geben Zeichenfolgenobjekte zurück.

Wenn ein DateTime-Objekt an ein Cmdlet gesendet wird, z Add-Content . B. das Zeichenfolgeneingaben erwartet, konvertiert PowerShell das Objekt in ein String-Objekt .

Die Methode (Get-Date).ToString() konvertiert ein DateTime-Objekt in ein String-Objekt .

Um die Eigenschaften und Methoden eines Objekts anzuzeigen, senden Sie das Objekt nach unten an Get-Member. Beispiel: Get-Date | Get-Member.

Hinweise

DateTime-Objekte befinden sich in long-date- und long-time-Formaten für das Systemschema.

Die gültigen UFormat-Spezifikationsbezeichner werden in der folgenden Tabelle angezeigt:

Formatbezeichner Bedeutung Beispiel
%A Tag der Woche – vollständiger Name Montag
%a Tag der Woche - kurzname Mon
%B Monatsname – voll January
%b Monatname - abgekürtet Jan
%C Jahrhundert 20 für 2019
%c Datum und Uhrzeit - gekürzt Thu Jun 27 08:44:18 2019
%D Datum im mm/dd/yy-Format 06/27/19
%d Tag des Monats - 2 Ziffern 05
%e Tag des Monats – vor einem Leerzeichen, wenn nur eine einzelne Ziffer <Platz>5
%F Datum im YYYY-mm-dd-Format, gleich %Y-%m-%d (das ISO 8601-Datumsformat) 2019-06-27
%G Identisch mit 'Y'
%g Identisch mit 'y'
%H Stunde im 24-Stunden-Format 17
%h Identisch mit 'b'
%I Stunde im 12-Stunden-Format 05
%j Tag des Jahres 1-366
%k Identisch mit 'H'
%l Identisch mit 'I' (Groß-/Kleinschreibung I) 05
%M Minuten 35
%m Monatsnummer 06
%n Newline-Zeichen
%p AM oder PM
%R Zeit im 24-Stunden-Format - keine Sekunden 17:45
%r Zeit im 12-Stunden-Format 09:15:36 Uhr
%S Sekunden 05
%s Sekunden, die seit dem 1. Januar 1970 00:00:00 Uhr verstrichen sind 1150451174
%t Horizontales Tabstoppzeichen
%T Zeit im 24-Stunden-Format 17:45:52
%U Identisch mit 'W'
%u Tag der Woche - Zahl Sonntag = 0
%V Woche des Jahres 01-53
%w Identisch mit 'u'
%W Woche des Jahres 00-52
%X Identisch mit 'T'
%x Datum im Standardformat für Gebietsschema 06/27/19 für Englisch-US
%Y Jahr im 4-stelligen Format 2019
%y Jahr im 2-stelligen Format 19
%Z Zeitzonenversatz von Universal Time Coordinate (UTC) -07