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).DateTimeFormat
kullanı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-Date
sonucunu 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-Object
iş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 olarakZ
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ı olarakT
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ı olarakT
harfi, 2 basamaklı saat, 2 basamaklı dakika, 2 basamaklı saniye, 4 basamaklı milisaniye ve UTC göstergesi olarakZ
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
, %d
ve %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
Bir DateTime nesnesini bu cmdlet'e yöneltebilirsiniz.
Çıkışlar
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-Member
adresine gönderin.
Örneğin, Get-Date | Get-Member
.
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.