Aracılığıyla paylaş


Get-Date

Geçerli tarih ve saati alır.

Sözdizimi

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

Description

Get-Date cmdlet'i 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. Get-Date kullanarak bir tarih veya saat karakter dizesi oluşturabilir ve dizeyi diğer cmdlet'lere veya programlara gönderebilirsiniz.

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 (Get-Culture).DateTimeFormatkullanın.

Ö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 Get-Date nasıl kullanılacağı gösterilmektedir. parametresi Date , Timeveya DateTimebağımsız değişkenlerini kullanır.

Get-Date -DisplayHint Date

Tuesday, June 25, 2019

Get-Date, yalnızca tarihi almak için Tarih bağımsız değişkeniyle DisplayHint parametresini 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. Çıktı 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 Biçim parametresini kullanır.

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

Belirticisi 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 çeşitli UFormat biçim tanımlayıcıları kullanılır. Çıktı 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:

Belirticisi 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, Monthve 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

$DST Get-Datesonucunu depolar. $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-Date, geçerli sistem tarih ve saatini görüntülemek için biçim tanımlayıcılarıyla UFormat parametresini kullanır. Biçim belirtici %Z-07UTC uzaklığını temsil eder.

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

Örnek 8: Zaman damgası oluşturma

Bu örnekte, biçim belirtici bir dizin adı için Dize nesnesi bir zaman damgası 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 komutunun sonuçlarını depolar. Get-Date bir zaman damgası String nesnesi oluşturmak için küçük harf o biçim belirticisiyle Biçim parametresini kullanır. nesnesi ForEach-Objectişlem hattına gönderilir. ScriptBlock, geçerli işlem hattı nesnesini temsil eden $_ değişkenini içerir. Zaman damgası dizesi, noktalarla değiştirilen iki nokta üst üstelerle sınırlandırılır.

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

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

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

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

# 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

-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. Set-Culture cmdlet'ini kullanarak geçerli yerel ayarı değiştirebilirsiniz.

Örneğin, ABD İngilizcesinde:

Get-Date -Date "6/25/2019 12:30:22", 25 Haziran 2019 Salı 12:30:22

Tür:DateTime
Diğer adlar:LastWriteTime
Position:0
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et: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.

Tür:Int32
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et: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
Tür:DisplayHintType
Kabul edilen değerler:Date, Time, DateTime
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et: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.

Biçim 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, Biçim parametresi için değer olarak aşağıdaki ek biçimleri kullanabilirsiniz.

  • FileDate . Yerel saatte geçerli tarihin dosya veya yol dostu gösterimi. Biçim yyyyMMdd (büyük/küçük harfe duyarlıdır, 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 yyyyMMddZ (büyük/küçük harfe duyarlıdır, 4 basamaklı yıl, 2 basamaklı ay, 2 basamaklı gün ve UTC göstergesi olarak Z harfi 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 yyyyMMddTHHmmssffff (büyük/küçük harfe duyarlıdır, 4 basamaklı yıl, 2 basamaklı ay, 2 basamaklı gün, saat ayırıcı olarak T harfi, 2 basamaklı saat, 2 basamaklı dakika, 2 basamaklı saniye ve 4 basamaklı milisaniye kullanılarak). Ö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 yyyyMMddTHHmmssffffZ (büyük/küçük harfe duyarlıdır, 4 basamaklı yıl, 2 basamaklı ay, 2 basamaklı gün, saat ayırıcı olarak T harfi, 2 basamaklı saat, 2 basamaklı dakika, 2 basamaklı saniye, 4 basamaklı milisaniye ve UTC göstergesi olarak Z harfi). Örneğin: 20190627T1540500718Z.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Hour

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

Tür:Int32
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Millisecond

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

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

Tür:Int32
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Minute

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

Tür:Int32
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Month

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

Tür:Int32
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Second

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

Tür:Int32
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et: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 yüzde işareti (%), örneğin, %m, %dve %Y. Notlar bölümü, geçerliUFormat tanımlayıcılarından oluşan bir tablo içerir.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Year

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

Tür:Int32
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et: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 Add-Content gibi bir cmdlet'e gönderildiğinde, PowerShell nesneyi bir String nesnesine dönüştürür.

ToString(), geçerli kültür ayarını kullanarak bir DateTime nesnesini String dö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 9.

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

String

Biçim veya UFormat parametrelerini kullandığınızda, bu cmdlet Dize 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 tanımlayıcısı 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 Asır 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 <alan>5
%G 'Y' ile aynı
%g 'y' ile aynı
%H 24 saatlik biçimde saat 17
%h 'b' ile aynı
%I 12 saatlik biçimde saat 05
%j Yılın günü (baştaki 0 içermez - PowerShell 6+'da düzeltildi) 1-366
%k 'H' ile aynı
%l 'I' ile aynı (Büyük harf I) 05
%M Tutanak 35
%m Ay numarası 06
%n yeni satır karakteri
%p veya PM
%R 24 saat biçimindeki süre -no saniye 17:45
%r 12 saatlik biçimdeki zaman 09:15:36
%S Saniye 05
%s 1 Ocak 1970 00:00:00'dan (yerel saate dönüştürüldü) bu yana geçen saniye sayısı 1150451174.95705
%t Yatay sekme karakteri
%T 24 saatlik biçimdeki süre 17:45:52
%U 'W' ile aynı
%u Haftanın günü - sayı Pazar = 0
%V Yılın haftası 01-53
%w 'u' ile aynı
%W Yılın haftası 1-53
%X 'T' ile aynı
%x Yerel ayar için standart biçimde tarih English-US 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

Windows PowerShell'in Get-Date -UFormat %s davranışı iki açıdan yanlıştır:

  • Dönüş değeri UTC saati yerine yerel saati temel alır.
  • Saniye değerinin dize gösterimi kesirli bir bölüme sahiptir. Çıkış, ondalık işaretine göre kültüre duyarlıdır.

Bu davranışlar PowerShell 6 ve üzeri sürümlerde düzeltilmiştir.