Get-Date
Získá aktuální datum a čas.
Syntax
net (Výchozí)
Get-Date
[[-Date] <DateTime>]
[-Year <Int32>]
[-Month <Int32>]
[-Day <Int32>]
[-Hour <Int32>]
[-Minute <Int32>]
[-Second <Int32>]
[-Millisecond <Int32>]
[-DisplayHint <DisplayHintType>]
[-Format <String>]
[<CommonParameters>]
UFormat
Get-Date
[[-Date] <DateTime>]
[-Year <Int32>]
[-Month <Int32>]
[-Day <Int32>]
[-Hour <Int32>]
[-Minute <Int32>]
[-Second <Int32>]
[-Millisecond <Int32>]
[-DisplayHint <DisplayHintType>]
[-UFormat <String>]
[<CommonParameters>]
Description
Rutina Get-Date získá objekt DateTime , který představuje aktuální datum nebo zadané datum.
Get-Date může formátovat datum a čas v několika formátech .NET a Unix. Můžete použít Get-Date k vygenerování řetězce znaků data nebo času a následnému odeslání řetězce do jiných rutin nebo programů.
Get-Date používá aktuální nastavení jazykové verze operačního systému k určení způsobu formátování výstupu. Chcete-li zobrazit nastavení počítače, použijte (Get-Culture).DateTimeFormat.
Příklady
Příklad 1: Získání aktuálního data a času
V tomto příkladu Get-Date zobrazí aktuální systémové datum a čas. Výstup je ve formátech s dlouhým datem a dlouhým časem.
Get-Date
Tuesday, June 25, 2019 14:53:32
Příklad 2: Získání prvků aktuálního data a času
Tento příklad ukazuje, jak získat Get-Date prvek data nebo času. Parametr používá argumenty Date, Time nebo DateTime.
Get-Date -DisplayHint Date
Tuesday, June 25, 2019
Get-Date pomocí parametru DisplayHint s argumentem Date získá pouze datum.
Příklad 3: Získání data a času pomocí specifikátoru formátu .NET
V tomto příkladu se k přizpůsobení formátu výstupu používá specifikátor formátu .NET. Výstupem je objekt String .
Get-Date -Format "dddd MM/dd/yyyy HH:mm K"
Tuesday 06/25/2019 16:17 -07:00
Get-Date používá parametr Format k určení několika specifikátorů formátu.
Specifikátory formátu .NET použité v tomto příkladu jsou definovány takto:
| Specifikátor | Definice |
|---|---|
dddd |
Den v týdnu – celé jméno |
MM |
Číslo měsíce |
dd |
Den v měsíci – 2 číslice |
yyyy |
Rok ve 4ciferném formátu |
HH:mm |
Čas ve 24hodinovém formátu – bez sekund |
K |
Posun časového pásma od souřadnic univerzálního času (UTC) |
Další informace o specifikátorech formátu .NET naleznete v tématu Vlastní řetězce formátu data a času.
Příklad 4: Získání data a času pomocí specifikátoru UFormat
V tomto příkladu se k přizpůsobení formátu výstupu používá několik specifikátorů formátu UFormat . Výstupem je objekt String .
Get-Date -UFormat "%A %m/%d/%Y %R %Z"
Tuesday 06/25/2019 16:19 -07
Get-Date používá parametr UFormat k určení několika specifikátorů formátu.
Specifikátory formátu UFormat použité v tomto příkladu jsou definovány takto:
| Specifikátor | Definice |
|---|---|
%A |
Den v týdnu – celé jméno |
%m |
Číslo měsíce |
%d |
Den v měsíci – 2 číslice |
%Y |
Rok ve 4ciferném formátu |
%R |
Čas ve 24hodinovém formátu – bez sekund |
%Z |
Posun časového pásma od souřadnic univerzálního času (UTC) |
Seznam platných specifikátorů formátu UFormat najdete v části Poznámky .
Příklad 5: Získání data v roce
V tomto příkladu se vlastnost používá k získání číselného dne v roce.
Gregoriánský kalendář má 365 dní s výjimkou přestupné roky, které mají 366 dní. Například 31. prosince 2020 je den 366.
(Get-Date -Year 2020 -Month 12 -Day 31).DayOfYear
366
Get-Date používá tři parametry k určení data: Year, Month a Day. Příkaz je zabalen s závorky tak, aby výsledek byl vyhodnocen vlastností DayOfYear .
Příklad 6: Kontrola, jestli je datum upravené pro letní čas
Tento příklad používá logickou metodu k ověření, jestli je datum upraveno letním časem.
$DST = Get-Date
$DST.IsDaylightSavingTime()
True
Proměnná ukládá $DST výsledek Get-Date.
$DST používá metodu IsDaylightSavingTime k otestování, zda je datum upraveno pro letní čas.
Příklad 7: Převod aktuálního času na čas UTC
V tomto příkladu se aktuální čas převede na čas UTC. Posun UTC pro národní prostředí systému se používá k převodu času. Tabulka v části Poznámky obsahuje platné specifikátory formátu UFormat .
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 používá parametr UFormat se specifikátory formátu k zobrazení aktuálního systémového data a času. Specifikátor formátu %Z představuje posun UTC -07.
Proměnná $Time ukládá aktuální systémové datum a čas.
$Time používá metodu ToUniversalTime() k převodu času na základě posunu UTC počítače.
Příklad 8: Vytvoření časového razítka
V tomto příkladu specifikátor formátu vytvoří objekt String časového razítka pro název adresáře. Časové razítko zahrnuje datum, čas a posun UTC.
$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
Proměnná $timestamp ukládá výsledky Get-Date příkazu.
Get-Date používá format parametr se specifikátorem formátu malými písmeny o k vytvoření objektu String časového razítka . Objekt je odeslán potrubím do ForEach-Object.
ScriptBlock obsahuje proměnnou$_, která představuje aktuální objekt kanálu. Řetězec časového razítka je oddělený dvojtečkami, které jsou nahrazeny tečkami.
New-Item používá parametr Path k určení umístění pro nový adresář. Cesta obsahuje proměnnou $timestamp jako název adresáře. Parametr Type určuje, že se vytvoří adresář.
Příklad 9: Zobrazení invariantní jazykové verze
Převede ToString()objekt DateTimeřetězec pomocí aktuální jazykové verze nastavení.
Interpretace výrazů PowerShellu ale vždy používá invariantní jazykové nastavení.
Například v systému s jazykovou en-US verzí ToString() metoda formátuje datum pomocí en-US nastavení jazykové verze.
# Get date using current culture en-US
(Get-Date 2024-03-19).ToString()
3/19/2024 12:00:00 AM
# Get date using invariant culture
"$(Get-Date 2024-03-19)"
03/19/2024 00:00:00
Parametry
-Date
Určuje datum a čas. Čas je nepovinný a pokud není zadaný, vrátí hodnotu 00:00:00. Zadejte datum a čas ve formátu, který je standardní pro aktuálně vybrané národní prostředí. Aktuální národní prostředí můžete změnit pomocí rutiny Set-Culture .
Například v angličtině v USA:
Get-Date -Date "6/25/2019 12:30:22" vrátí úterý, červen 25, 2019 12:30:22
Vlastnosti parametru
| Typ: | DateTime |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | ČasPosledníhoZápisu |
Sady parametrů
(All)
| Position: | 0 |
| Povinné: | False |
| Hodnota z kanálu: | True |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Day
Určuje den v měsíci, který se zobrazí. Zadejte hodnotu od 1 do 31.
Pokud je zadaná hodnota větší než počet dní v měsíci, PowerShell sčítá počet dní v měsíci. Například Get-Date -Month 4 -Day 31 zobrazí 1. května, nikoli 31. dubna.
Vlastnosti parametru
| Typ: | Int32 |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-DisplayHint
Určuje, které prvky data a času jsou zobrazeny.
Přijaté hodnoty jsou následující:
- Datum: zobrazí pouze datum.
- Čas: zobrazí pouze čas.
- DateTime: zobrazí datum a čas.
Vlastnosti parametru
| Typ: | DisplayHintType |
| Default value: | None |
| Přípustné hodnoty: | Date, Time, DateTime |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Format
Zobrazí datum a čas ve formátu rozhraní Microsoft .NET Framework označený specifikátorem formátu. Parametr Format vypíše objekt String .
Seznam dostupných specifikátorů formátu .NET naleznete v tématu Vlastní řetězce formátu data a času.
Při použití Get-Date získá pouze vlastnosti objektu DateTime potřebné k zobrazení data. V důsledku toho nemusí být některé vlastnosti a metody objektů DateTime k dispozici.
Počínaje PowerShellem 5.0 můžete jako hodnoty parametru Format použít následující další formáty.
Datum souboru. Soubor nebo popisná cesta k aktuálnímu datu v místním čase. Formát je
yyyyMMdd(rozlišují se malá a velká písmena, s použitím 4místného roku, 2místného měsíce a 2místného dne). Příklad: 20190627.FileDateUniversal. Soubor nebo popisná cesta k aktuálnímu datu v univerzálním čase (UTC). Formát je
yyyyMMddZ(rozlišují se malá a velká písmena, s použitím čtyřmístného roku, 2místného měsíce, 2místného dne a písmenaZjako indikátoru UTC). Příklad: 20190627Z.FileDateTime. Soubor nebo reprezentace aktuálního data a času v místním čase ve formátu 24 hodin. Formát je
yyyyMMddTHHmmssffff(rozlišují se malá a velká písmena s použitím čtyřmístného roku, 2místného měsíce, 2místného dne, 2místného dne,Toddělovače času, 2místné minuty, dvoumístné sekundy a 4místného milisekundy). Příklad: 20190627T0840107271.Soubor FileDateTimeUniversal. Soubor nebo reprezentace aktuálního data a času v univerzálním čase (UTC) ve formátu 24 hodin. Formát je
yyyyMMddTHHmmssffffZ(rozlišují se malá a velká písmena, s použitím čtyřmístného roku, 2místného měsíce, 2místného dne, oddělovače času,T2místné minuty, 2místné minuty, 4místné milisekundy a písmenaZjako indikátor UTC). Například: 20190627T1540500718Z.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
net
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Hour
Určuje hodinu, která se zobrazí. Zadejte hodnotu od 0 do 23.
Vlastnosti parametru
| Typ: | Int32 |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Millisecond
Určuje milisekundy v datu. Zadejte hodnotu od 0 do 999.
Tento parametr byl představen v PowerShellu 3.0.
Vlastnosti parametru
| Typ: | Int32 |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Minute
Určuje minutu, která se zobrazí. Zadejte hodnotu od 0 do 59.
Vlastnosti parametru
| Typ: | Int32 |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Month
Určuje měsíc, který se zobrazí. Zadejte hodnotu od 1 do 12.
Vlastnosti parametru
| Typ: | Int32 |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Second
Určuje sekundu, která se zobrazí. Zadejte hodnotu od 0 do 59.
Vlastnosti parametru
| Typ: | Int32 |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-UFormat
Zobrazí datum a čas ve formátu Unix. Parametr UFormat vypíše objekt string.
Specifikátory UFormat jsou předcházet znakem procenta (%), %mnapříklad , , %da %Y. Oddíl Poznámky obsahuje tabulku platných specifikátorů UFormat.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
UFormat
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Year
Určuje rok, který se zobrazí. Zadejte hodnotu od 1 do 9999.
Vlastnosti parametru
| Typ: | Int32 |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
DateTime
Do této rutiny můžete objekt DateTime.
Výstupy
DateTime
Ve výchozím nastavení vrátí tato rutina objekt DateTime .
Když je objekt DateTime odeslán kanál do rutiny, jako Add-Content je například očekávaný řetězcový vstup, PowerShell převede objekt na objekt String .
Převede ToString() objekt DateTime na řetězec pomocí aktuální jazykové verze nastavení.
Interpretace výrazů PowerShellu ale vždy používá invariantní jazykové nastavení. Pokud chcete zjistit, jak se invariantní jazyková verze liší, podívejte se na příklad 9.
Chcete-li zobrazit vlastnosti a metody objektu, odešlete objekt dolů kanálu do Get-Member.
Například: Get-Date | Get-Member.
String
Pokud použijete parametry Format nebo UFormat , vrátí tato rutina objekty String .
Poznámky
Výchozí formáty pro výstup objektů DateTime jsou dlouhé a dlouhé formáty pro aktuálně vybrané národní prostředí.
Platné specifikátory UFormat se zobrazují v následující tabulce:
Důležité
Specifikátory UFormat se mění nebo přidávají v novějších verzích PowerShellu. Například %F byl přidán v PowerShellu 6.2, takže není k dispozici ve Windows PowerShellu 5.1 nebo starším. Při použití specifikátorů UFormat ve skriptech navržených ke spuštění ve více verzích PowerShellu mějte na paměti.
| Specifikátor formátu | Význam | Příklad |
|---|---|---|
%A |
Den v týdnu – celé jméno | Monday |
%a |
Den v týdnu – zkrácený název | Pon |
%B |
Název měsíce – úplný | Leden |
%b |
Název měsíce – zkrácený | Jan |
%C |
Století | 20 pro 2019 |
%c |
Datum a čas – zkrácené | Čt 27. června 08:44:18 2019 |
%D |
Datum ve formátu mm/dd/rr | 06/27/19 |
%d |
Den v měsíci – 2 číslice | 05 |
%e |
Den v měsíci – před mezerou, pokud je pouze jedna číslice | <mezera>5 |
%G |
Stejné jako "Y" | |
%g |
Stejné jako "y" | |
%H |
Hodina ve formátu 24 hodin | 17 |
%h |
Stejné jako "b" | |
%I |
Hodina ve formátu 12 hodin | 05 |
%j |
Den v roce (nezahrnuje úvodní 0 – opravený v PowerShellu 6+) |
1-366 |
%k |
Stejné jako "H" | |
%l |
Stejné jako "I" (velká písmena I) | 05 |
%M |
Zápis | 35 |
%m |
Číslo měsíce | 06 |
%n |
znak nového řádku | |
%p |
DOM nebo PM | |
%R |
Čas ve 24hodinovém formátu -no sekund | 17:45 |
%r |
Čas ve formátu 12 hodin | 09:15:36 |
%S |
Sekundy | 05 |
%s |
Sekundy uplynuly od 1. ledna 1970 00:00:00 (převedené na místní čas) | 1150451174.95705 |
%t |
Vodorovný znak tabulátoru | |
%T |
Čas ve formátu 24 hodin | 17:45:52 |
%U |
Stejné jako "W" | |
%u |
Den v týdnu – číslo | Neděle = 0 |
%V |
Týden v roce | 01-53 |
%w |
Stejné jako "u" | |
%W |
Týden v roce | 1-53 |
%X |
Stejné jako "T" | |
%x |
Datum ve standardním formátu národního prostředí | 06/27/19 pro English-US |
%Y |
Rok ve 4ciferném formátu | 2019 |
%y |
Rok ve dvouciferném formátu | 19 |
%Z |
Posun časového pásma od souřadnic univerzálního času (UTC) | -07 |
Poznámka:
Chování Get-Date -UFormat %s Windows PowerShellu je ve dvou ohledech nesprávné:
- Vrácená hodnota je založena na místním čase místo času UTC.
- Řetězcová reprezentace hodnoty sekund má zlomkovou část. Výstup je citlivý na jazykovou verzi s ohledem na desetinnou čárku.
Toto chování jsme opravili v PowerShellu 6 a novějším.