Get-Date

Geçerli tarih ve saati alır.

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>]

Description

Cmdlet, Get-Date geçerli tarihi veya belirttiğiniz tarihi temsil eden bir DateTime nesnesi alır. Get-Date tarih ve saati çeşitli .NET ve UNIX biçimlerinde biçimlendirebilir. Bir tarih veya saat karakter dizesi oluşturmak ve ardından dizeyi diğer cmdlet'lere veya programlara göndermek için kullanabilirsiniz Get-Date .

Get-Date çıkışın nasıl biçimlendirildiğini belirlemek için işletim sisteminin geçerli kültür ayarlarını kullanır. Bilgisayarınızın ayarlarını görüntülemek için kullanın (Get-Culture).DateTimeFormat.

Örnekler

Örnek 1: Geçerli tarih ve saati alma

Bu örnekte, Get-Date geçerli sistem tarih ve saatini görüntüler. Çıkış, uzun tarih ve uzun süreli biçimlerdedir.

Get-Date

Tuesday, June 25, 2019 14:53:32

Örnek 2: Geçerli tarih ve saatin öğelerini alma

Bu örnekte, tarih veya saat öğesini almak için nasıl kullanılacağı Get-Date gösterilmektedir. parametresi Date, Time veya DateTime bağımsız değişkenlerini kullanır.

Get-Date -DisplayHint Date

Tuesday, June 25, 2019

Get-DateYalnızca tarihi almak için DisplayHint parametresini Date bağımsız değişkeniyle birlikte kullanır.

Örnek 3: .NET biçim tanımlayıcısı ile tarih ve saati alma

Bu örnekte, çıkışın biçimini özelleştirmek için bir .NET biçim tanımlayıcısı kullanılır. Çıkış bir String nesnesidir.

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

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

Get-Date çeşitli biçim tanımlayıcıları belirtmek için Format parametresini kullanır.

Bu örnekte kullanılan .NET biçim tanımlayıcıları aşağıdaki gibi tanımlanır:

Belirleyici Tanım
dddd Haftanın günü - tam ad
MM Ay numarası
dd Ayın günü - 2 basamak
yyyy 4 basamaklı biçimde yıl
HH:mm 24 saatlik biçimdeki süre - saniye yok
K Evrensel Saat Koordinatı'ndan saat dilimi uzaklığı (UTC)

.NET biçim tanımlayıcıları hakkında daha fazla bilgi için bkz . Özel tarih ve saat biçimi dizeleri.

Örnek 4: UFormat tanımlayıcısı ile tarih ve saati alma

Bu örnekte, çıkışın biçimini özelleştirmek için birkaç UFormat biçim tanımlayıcısı kullanılır. Çıkış bir String nesnesidir.

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

Tuesday 06/25/2019 16:19 -07

Get-Date çeşitli biçim tanımlayıcıları belirtmek için UFormat parametresini kullanır.

Bu örnekte kullanılan UFormat biçim tanımlayıcıları aşağıdaki gibi tanımlanır:

Belirleyici Tanım
%A Haftanın günü - tam ad
%m Ay numarası
%d Ayın günü - 2 basamak
%Y 4 basamaklı biçimde yıl
%R 24 saatlik biçimdeki süre - saniye yok
%Z Evrensel Saat Koordinatı'ndan saat dilimi uzaklığı (UTC)

Geçerli UFormat biçim tanımlayıcılarının listesi için Notlar bölümüne bakın.

Örnek 5: Yılın tarihini alma

Bu örnekte, yılın sayısal gününü almak için bir özellik kullanılır.

Gregoryen takvimin 366 günü olan artık yıllar dışında 365 günü vardır. Örneğin, 31 Aralık 2020, 366. gündür.

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

366

Get-Date tarihi belirtmek için üç parametre kullanır: Year, Month ve Day. Komut parantezlerle sarmalanır, böylece sonuç DayofYear özelliği tarafından değerlendirilir.

Örnek 6: Bir tarihin gün ışığından yararlanma saati için ayarlı olup olmadığını denetleme

Bu örnekte, bir tarihin yaz saatiyle ayarlı olup olmadığını doğrulamak için boole yöntemi kullanılır.

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

True

değişkeni, $DST sonucunu Get-Datedepolar. $DST tarihin yaz saati için ayarlı olup olmadığını test etmek için IsDaylightSavingTime yöntemini kullanır.

Örnek 7: Geçerli saati UTC saatine dönüştürme

Bu örnekte geçerli saat UTC saatine dönüştürülür. Sistemin yerel ayarı için UTC uzaklığı, saati dönüştürmek için kullanılır. Notlar bölümündeki bir tabloda geçerli UFormat biçim tanımlayıcıları listelenir.

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-Dategeçerli sistem tarih ve saatini görüntülemek için biçim tanımlayıcılarıyla UFormat parametresini kullanır. %Z biçim belirticisi -07 UTC uzaklığını temsil eder.

değişkeni geçerli $Time sistem tarih ve saatini depolar. $TimeToUniversalTime(), saati bilgisayarın UTC uzaklığını temel alarak dönüştürmek için yöntemini kullanır.

Örnek 8: Zaman damgası oluşturma

Bu örnekte, biçim belirtici bir dizin adı için bir zaman damgası String nesnesi oluşturur. Zaman damgası tarih, saat ve UTC uzaklığını içerir.

$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

$timestamp değişkeni bir Get-Date komutun sonuçlarını depolar. Get-Datebir zaman damgası String nesnesi oluşturmak için Küçük harf o biçim belirticisiyle Format parametresini kullanır. nesnesi işlem hattına ForEach-Objectgönderilir. ScriptBlock, geçerli işlem hattı nesnesini temsil eden değişkeni içerir$_. Zaman damgası dizesi, noktalarla değiştirilen iki nokta üst üstelerle sınırlandırılır.

New-Itemyeni bir dizinin konumunu belirtmek için Path parametresini kullanır. Yol, dizin adı olarak değişkenini içerir $timestamp . Type parametresi, bir dizinin oluşturulduğunu belirtir.

Örnek 9: Unix zaman damgasını dönüştürme

Bu örnek bir Unix saatini (1970-01-01 0:00:00'dan bu yana saniye sayısıyla gösterilir) DateTime'a dönüştürür.

Get-Date -UnixTimeSeconds 1577836800

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

Örnek 10: UTC olarak yorumlanan bir tarih değeri döndürme

Bu örnekte, bir tarih değerini UTC eşdeğeri olarak yorumlama gösterilmektedir. Örneğin, bu makine Pasifik Standart Saati olarak ayarlanmıştır. Varsayılan olarak, Get-Date o saat dilimi için değerleri döndürür. Değeri UTC eşdeğer saatine dönüştürmek için AsUTC parametresini kullanın.

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

Örnek 11: Sabit kültürü gösterme

geçerli ToString() kültür ayarını kullanarak bir DateTime nesnesini Bir Dizeye dönüştürür. Ancak PowerShell ifade yorumlaması her zaman sabit kültür ayarını kullanır.

Örneğin, kültürün etkin olduğu en-US bir sistemde yöntemi, ToString() kültür ayarlarını kullanarak en-US tarihi biçimlendirebilir.

# 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

Parametreler

-AsUTC

Tarih değerini UTC cinsinden eşdeğer saate dönüştürür.

Bu parametre PowerShell 7.1'de kullanıma sunulmuştur.

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

-Date

Bir tarih ve saat belirtir. Süre isteğe bağlıdır ve belirtilmezse 00:00:00 döndürür. Tarih ve saati, seçili durumdaki yerel ayar için standart bir biçimde girin. Cmdlet'ini kullanarak Set-Culture geçerli yerel ayarı değiştirebilirsiniz.

Örneğin, ABD İngilizcesinde:

Get-Date -Date "6/25/2019 12:30:22" döndürür 25 Haziran 2019 Salı 12:30:22

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

-Day

Görüntülenen ayın gününü belirtir. 1 ile 31 bir değer girin.

Belirtilen değer bir aydaki gün sayısından büyükse, PowerShell güne gün sayısını ekler. Örneğin, Get-Date -Month 4 -Day 31 31 Nisan'ı değil 1 Mayıs'ı görüntüler.

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

-DisplayHint

Tarih ve saatin hangi öğelerinin görüntüleneceğini belirler.

Kabul edilen değerler şunlardır:

  • Tarih: Yalnızca tarihi görüntüler
  • Saat: Yalnızca saati görüntüler
  • DateTime: Tarih ve saati görüntüler
Type:DisplayHintType
Accepted values:Date, Time, DateTime
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Format

Microsoft .NET Framework biçimindeki tarih ve saati, biçim tanımlayıcısı tarafından belirtilen şekilde görüntüler. Format parametresi bir String nesnesi verir.

Kullanılabilir .NET biçim tanımlayıcılarının listesi için bkz . Özel tarih ve saat biçimi dizeleri.

Format parametresi kullanıldığında, Get-Date yalnızca tarihi görüntülemek için gereken DateTime nesnesinin özelliklerini alır. Sonuç olarak, DateTime nesnelerinin bazı özellikleri ve yöntemleri kullanılamayabilir.

PowerShell 5.0'dan başlayarak, Format parametresi için değer olarak aşağıdaki ek biçimleri kullanabilirsiniz.

  • DosyaTarihi. Yerel saatte geçerli tarihin dosya veya yol dostu gösterimi. Biçim (büyük/küçük harfe duyarlıdır yyyyMMdd , 4 basamaklı yıl, 2 basamaklı ay ve 2 basamaklı gün kullanılır). Örneğin: 20190627.

  • FileDateUniversal. Geçerli tarihin evrensel saat (UTC) olarak dosya veya yol dostu gösterimi. Biçim (büyük/küçük harfe duyarlıdır yyyyMMddZ , 4 basamaklı yıl, 2 basamaklı ay, 2 basamaklı gün ve UTC göstergesi olarak harf Z kullanılır). Örneğin: 20190627Z.

  • FileDateTime. Geçerli tarih ve saatin yerel saatle 24 saat biçiminde dosya veya yol dostu gösterimi. Biçim (büyük/küçük harfe duyarlıdır yyyyMMddTHHmmssffff , 4 basamaklı yıl, 2 basamaklı ay, 2 basamaklı gün, saat ayırıcı olarak harf T , 2 basamaklı saat, 2 basamaklı dakika, 2 basamaklı saniye ve 4 basamaklı milisaniye kullanılır). Örneğin: 20190627T0840107271.

  • FileDateTimeUniversal. Geçerli tarih ve saatin evrensel saat (UTC) olarak 24 saatlik biçimde dosya veya yol dostu gösterimi. Biçim (büyük/küçük harfe duyarlıdır yyyyMMddTHHmmssffffZ , 4 basamaklı yıl, 2 basamaklı ay, 2 basamaklı gün, saat ayırıcı olarak harf T , 2 basamaklı saat, 2 basamaklı dakika, 2 basamaklı saniye, 4 basamaklı milisaniye ve UTC göstergesi olarak harf Z ). Örneğin: 20190627T1540500718Z.

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

-Hour

Görüntülenen saati belirtir. 0 ile 23 bir değer girin.

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

-Millisecond

Tarihteki milisaniyeleri belirtir. 0 ile 999 bir değer girin.

Bu parametre PowerShell 3.0'da kullanıma sunulmuştur.

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

-Minute

Görüntülenen dakikayı belirtir. 0 ile 59 bir değer girin.

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

-Month

Görüntülenen ayı belirtir. 1 ile 12 bir değer girin.

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

-Second

Görüntülenen saniyeyi belirtir. 0 ile 59 bir değer girin.

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

-UFormat

Tarih ve saati UNIX biçiminde görüntüler. UFormat parametresi bir dize nesnesi verir.

UFormat tanımlayıcılarının önünde bir yüzde işareti (%), örneğin, %m, %dve %Yolur. Notlar bölümü geçerli UFormat tanımlayıcılarından oluşan bir tablo içerir.

UFormat parametresi kullanıldığında, Get-Date yalnızca tarihi görüntülemek için gereken DateTime nesnesinin özelliklerini alır. Sonuç olarak, DateTime nesnelerinin bazı özellikleri ve yöntemleri kullanılamayabilir.

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

-UnixTimeSeconds

1 Ocak 1970, 0:00:00 tarihinden itibaren saniye cinsinden gösterilen tarih ve saat.

Bu parametre PowerShell 7.1'de kullanıma sunulmuştur.

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

-Year

Görüntülenen yılı belirtir. 1 ile 9999 arasından bir değer girin.

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

Girişler

DateTime

Bir DateTime nesnesini bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

DateTime

Varsayılan olarak, bu cmdlet bir DateTime nesnesi döndürür.

Bir DateTime nesnesi, işlem hattını dize girişi bekleyen bir cmdlet'e Add-Content gönderildiğinde, PowerShell nesneyi bir String nesnesine dönüştürür.

geçerli ToString() kültür ayarını kullanarak bir DateTime nesnesini Dizeyedönüştürür. Ancak PowerShell ifade yorumlaması her zaman sabit kültür ayarını kullanır. Sabit kültürün ne kadar farklı olduğunu görmek için bkz . Örnek 11.

Bir nesnenin özelliklerini ve yöntemlerini görüntülemek için, nesnesini işlem hattına Get-Membergönderin. Örneğin, Get-Date | Get-Member.

String

Format veya UFormat parametrelerini kullandığınızda, bu cmdlet String nesnelerini döndürür.

Notlar

DateTime nesnelerinin çıkışı için varsayılan biçimler, seçili durumdaki yerel ayar için uzun tarih ve uzun saat biçimleridir.

Geçerli UFormat tanımlayıcıları aşağıdaki tabloda görüntülenir:

Önemli

UFormat tanımlayıcıları, PowerShell'in daha yeni sürümlerinde değiştirilir veya eklenir. Örneğin, %F PowerShell 6.2'ye eklendiğinden Windows PowerShell 5.1 veya daha eski sürümlerinde kullanılamaz. PowerShell'in birden çok sürümünde çalıştırılacak şekilde tasarlanmış betiklerde UFormat tanımlayıcılarını kullanırken bunu göz önünde bulundurun.

Biçim belirteci Anlamı Örnek
%A Haftanın günü - tam ad Pazartesi
%a Haftanın günü - kısaltılmış ad Pzt
%B Ay adı - tam Ocak
%b Ay adı - kısaltılmış Oca
%C Yüzyıl 2019 için 20
%c Tarih ve saat - kısaltılmış 27 Haziran 08:44:18 2019
%D Aa/gg/yyy biçiminde tarih 06/27/19
%d Ayın günü - 2 basamak 05
%e Ayın günü - yalnızca tek bir basamak varsa önünde boşluk var <boşluk>5
%F YYYY-aa-gg biçiminde, %Y-%m-%d değerine eşit tarih (ISO 8601 tarih biçimi) 2019-06-27
%G ISO haftası tarih yılı (haftanın Perşembesini içeren yıl)
%g 'G' ile aynı - 2 basamak
%H 24 saatlik biçimde saat 17
%h 'b' ile aynı
%I 12 saatlik biçimde saat 05
%j Yılın günü 1-366
%k 'H' ile aynı
%l 'I' ile aynı (Büyük harf I) 05
%M Dakika 35
%m Ay numarası 06
%n yeni satır karakteri
%p AM veya PM
%R 24 saatlik biçimdeki süre -saniye yok 17:45
%r 12 saatlik biçimdeki zaman 09:15:36
%S Saniye 05
%s 1 Ocak 1970 00:00:00 (UTC) tarihinden bu yana geçen saniye sayısı 1150451174
%t Yatay sekme karakteri
%T 24 saatlik biçimdeki süre 17:45:52
%U 'W' ile aynı
%u Haftanın sayısal günü (1-7) (PowerShell 7.2'de değiştirildi) Pazartesi = 1, Pazar = 7
%V Yılın haftası 01-53
%w Haftanın sayısal günü (0-6) Pazar = 0, Cumartesi = 6
%W Yılın haftası 00-52
%X 'T' ile aynı
%x Yerel ayar için standart biçimde tarih İngilizce-ABD için 27/06/19
%Y 4 basamaklı biçimde yıl 2019
%y 2 basamaklı biçimde yıl 19
%Z Evrensel Saat Koordinatı'ndan saat dilimi uzaklığı (UTC) -07

Not

-UFormat %s Davranışı, Windows PowerShell'deki davranışla ilgili sorunları gidermek için değiştirildi.

  • Dönüş değeri UTC saatini temel alır.
  • Değer, saniye değerinin tamsayısıdır (kesirli bölüm yoktur).