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>]
   [<CommonParameters>]
Get-Date
   [[-Date] <DateTime>]
   [-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.

Parameter

-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 einem Format ein, das standard für das Systemschema ist.

Beispiel: in US-Englisch:

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

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 z. B Get-Date -Month 2 -Day 31 . den 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-Formatspezifikationen 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 Formatparameter verwenden.

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

  • FileDateUniversal. Eine datei- oder pfadfreundliche Darstellung des aktuellen Datums in der universellen Uhrzeit (UTC). Das Format ist yyyyMMddZ (Groß-/Kleinschreibung, verwenden sie ein 4-stelliges Jahr, einen 2-stelligen Monat, einen 2-stelligen Tag und den Buchstaben Z als UTC-Indikator). Beispiel: 20190627Z.

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

  • FileDateTimeUniversal. Eine datei- oder pfadfreundliche Darstellung des aktuellen Datums und der Uhrzeit in universeller Zeit (UTC) im 24-Stunden-Format. Das Format ist yyyyMMddTHHmmssffffZ (Groß-/Kleinschreibung, mit einem 4-stelligen Jahres-, 2-stelligen Monat, 2-stelliger Tag, Dem Buchstaben T als Zeittrennzeichen, 2-stellige Stunde, 2-stellige Sekunde, 4-stellige Millisekunden und dem Buchstaben 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-Spezifikationszeichen werden einem Prozentzeichen (%), z. B. , %m, %dund .%Y Der Abschnitt "Notizen " enthält eine Tabelle mit gültigen UFormat-Spezifikationen.

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

-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 String-Objekte zurück.

Wenn ein DateTime-Objekt an ein Cmdlet gesendet wird, z Add-Content . B. die Zeichenfolgeneingabe 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 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 – Ziffern vor einem Leerzeichen <Platz>5
%F Datum im YYYYY-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 Format 24 Stunden 17
%h Identisch mit 'b'
%I Stunde im 12-stündigen 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 Format "12 Stunden" 09:15:36 Uhr
%S Sekunden 05
%s Sekunden, die seit 1. Januar 1970 00:00:00 Uhr abgelaufen sind 1150451174
%t Horizontales Registerkartenzeichen
%T Zeit im Format "24 Stunden" 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 Universeller Zeitkoordinate (UTC) -07