Get-Date

Mendapatkan tanggal dan waktu saat ini.

Sintaks

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

Deskripsi

Get-Date Cmdlet mendapatkan objek DateTime yang mewakili tanggal saat ini atau tanggal yang Anda tentukan. Get-Date dapat memformat tanggal dan waktu dalam beberapa format .NET dan UNIX. Anda dapat menggunakan Get-Date untuk menghasilkan string karakter tanggal atau waktu, lalu mengirim string ke cmdlet atau program lain.

Get-Date menggunakan pengaturan budaya komputer untuk menentukan bagaimana output diformat. Untuk melihat pengaturan komputer Anda, gunakan (Get-Culture).DateTimeFormat.

Contoh

Contoh 1: Dapatkan tanggal dan waktu saat ini

Dalam contoh ini, Get-Date menampilkan tanggal dan waktu sistem saat ini. Output dalam format tanggal panjang dan jangka panjang.

Get-Date

Tuesday, June 25, 2019 14:53:32

Contoh 2: Dapatkan elemen tanggal dan waktu saat ini

Contoh ini menunjukkan cara menggunakan Get-Date untuk mendapatkan elemen tanggal atau waktu. Parameter menggunakan argumen Tanggal, Waktu, atau DateTime.

Get-Date -DisplayHint Date

Tuesday, June 25, 2019

Get-Datemenggunakan parameter DisplayHint dengan argumen Tanggal untuk mendapatkan tanggal saja.

Contoh 3: Dapatkan tanggal dan waktu dengan penentu format .NET

Dalam contoh ini, penentu format .NET digunakan untuk menyesuaikan format output. Outputnya adalah objek String .

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

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

Get-Datemenggunakan parameter Format untuk menentukan beberapa penentu format.

Penentu format .NET yang digunakan dalam contoh ini didefinisikan sebagai berikut:

Penentu Definisi
dddd Hari dalam seminggu - nama lengkap
MM Jumlah bulan
dd Hari dalam sebulan - 2 digit
yyyy Tahun dalam format 4 digit
HH:mm Waktu dalam format 24 jam - tidak ada detik
K Offset zona waktu dari Universal Time Coordinate (UTC)

Untuk informasi selengkapnya tentang penentu format .NET, lihat String format tanggal dan waktu kustom.

Contoh 4: Dapatkan tanggal dan waktu dengan penentu UFormat

Dalam contoh ini, beberapa penentu format UFormat digunakan untuk menyesuaikan format output. Outputnya adalah objek String .

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

Tuesday 06/25/2019 16:19 -07

Get-Datemenggunakan parameter UFormat untuk menentukan beberapa penentu format.

Penentu format UFormat yang digunakan dalam contoh ini didefinisikan sebagai berikut:

Penentu Definisi
%A Hari dalam seminggu - nama lengkap
%m Jumlah bulan
%d Hari dalam sebulan - 2 digit
%Y Tahun dalam format 4 digit
%R Waktu dalam format 24 jam - tidak ada detik
%Z Offset zona waktu dari Universal Time Coordinate (UTC)

Untuk daftar penentu format UFormat yang valid, lihat bagian Catatan.

Contoh 5: Dapatkan tanggal dalam setahun

Dalam contoh ini, properti digunakan untuk mendapatkan hari numerik dalam setahun.

Kalender Gregorian memiliki 365 hari, kecuali untuk tahun kampung yang memiliki 366 hari. Misalnya, 31 Desember 2020 adalah hari ke-366.

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

366

Get-Date menggunakan tiga parameter untuk menentukan tanggal: Tahun, Bulan, dan Hari. Perintah dibungkus dengan tanda kurung sehingga hasilnya dievaluasi oleh properti DayofYear .

Contoh 6: Periksa apakah tanggal disesuaikan untuk waktu musim panas

Contoh ini menggunakan metode boolean untuk memverifikasi apakah tanggal disesuaikan dengan waktu musim panas.

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

True

Variabel, $DST menyimpan hasil .Get-Date $DSTmenggunakan metode IsDaylightSavingTime untuk menguji apakah tanggal disesuaikan untuk waktu musim panas.

Contoh 7: Mengonversi waktu saat ini ke waktu UTC

Dalam contoh ini, waktu saat ini dikonversi ke waktu UTC. Offset UTC untuk lokal sistem digunakan untuk mengonversi waktu. Tabel di bagian Catatan mencantumkan penentu format UFormat yang valid.

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-Datemenggunakan parameter UFormat dengan penentu format untuk menampilkan tanggal dan waktu sistem saat ini. Penentu format %Z mewakili offset UTC -07.

Variabel $Time menyimpan tanggal dan waktu sistem saat ini. $Timemenggunakan metode ToUniversalTime() untuk mengonversi waktu berdasarkan offset UTC komputer.

Contoh 8: Membuat tanda waktu

Dalam contoh ini, penentu format membuat objek String tanda waktu untuk nama direktori. Tanda waktu mencakup tanggal, waktu, dan offset 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

Variabel $timestamp menyimpan hasil Get-Date perintah. Get-Datemenggunakan parameter Format dengan penentu format huruf kecil o untuk membuat objek String tanda waktu. Objek dikirimkan alur ke ForEach-Object. ScriptBlock berisi $_ variabel yang mewakili objek alur saat ini. String tanda waktu dibatasi oleh titik dua yang digantikan oleh titik.

New-Itemmenggunakan parameter Jalur untuk menentukan lokasi direktori baru. Jalur mencakup $timestamp variabel sebagai nama direktori. Parameter Jenis menentukan bahwa direktori dibuat.

Contoh 9: Mengonversi tanda waktu Unix

Contoh ini mengonversi waktu Unix (diwakili oleh jumlah detik sejak 1970-01-01 0:00:00) ke DateTime.

Get-Date -UnixTimeSeconds 1577836800

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

Contoh 10: Mengembalikan nilai tanggal yang ditafsirkan sebagai UTC

Contoh ini menunjukkan cara menginterpretasikan nilai tanggal sebagai nilai UTC yang setara. Misalnya, komputer ini diatur ke Waktu Standar Pasifik. Secara default, Get-Date mengembalikan nilai untuk zona waktu tersebut. Gunakan parameter AsUTC untuk mengonversi nilai ke waktu yang setara UTC.

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

Parameter

-AsUTC

Mengonversi nilai tanggal ke waktu yang setara dalam UTC.

Parameter ini diperkenalkan di PowerShell 7.1.

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

-Date

Menentukan tanggal dan waktu. Waktu bersifat opsional dan jika tidak ditentukan, mengembalikan 00:00:00.

Masukkan tanggal dan waktu dalam format yang standar untuk lokal sistem.

Misalnya, dalam bahasa Inggris AS:

Get-Date -Date "6/25/2019 12:30:22" mengembalikan Selasa, 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

Menentukan hari dalam bulan yang ditampilkan. Masukkan nilai dari 1 hingga 31.

Jika nilai yang ditentukan lebih besar dari jumlah hari dalam sebulan, PowerShell menambahkan jumlah hari ke bulan. Misalnya, Get-Date -Month 2 -Day 31 menampilkan 3 Maret, bukan 31 Februari.

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

-DisplayHint

Menentukan elemen tanggal dan waktu mana yang ditampilkan.

Nilai yang diterima adalah sebagai berikut:

  • Tanggal: hanya menampilkan tanggal
  • Waktu: hanya menampilkan waktu
  • DateTime: menampilkan tanggal dan waktu
Type:DisplayHintType
Accepted values:Date, Time, DateTime
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Format

Menampilkan tanggal dan waktu dalam format Microsoft .NET Framework yang ditunjukkan oleh penentu format. Parameter Format menghasilkan objek String .

Untuk daftar penentu format .NET yang tersedia, lihat String format tanggal dan waktu kustom.

Saat parameter Format digunakan, Get-Date hanya mendapatkan properti objek DateTime yang diperlukan untuk menampilkan tanggal. Akibatnya, beberapa properti dan metode objek DateTime mungkin tidak tersedia.

Mulai dari PowerShell 5.0, Anda bisa menggunakan format tambahan berikut sebagai nilai untuk parameter Format .

  • FileDate. Representasi file atau ramah jalur dari tanggal saat ini di waktu lokal. Formatnya adalah yyyyMMdd (peka huruf besar/kecil, menggunakan tahun 4 digit, bulan 2 digit, dan hari 2 digit). Misalnya: 20190627.

  • FileDateUniversal. Representasi file atau ramah jalur dari tanggal saat ini dalam waktu universal (UTC). Formatnya adalah yyyyMMddZ (peka huruf besar/kecil, menggunakan tahun 4 digit, bulan 2 digit, hari 2 digit, dan huruf Z sebagai indikator UTC). Misalnya: 20190627Z.

  • FileDateTime. Representasi file atau ramah jalur dari tanggal dan waktu saat ini dalam waktu lokal, dalam format 24 jam. Formatnya adalah yyyyMMddTHHmmssffff (peka huruf besar/kecil, menggunakan tahun 4 digit, bulan 2 digit, hari 2 digit, huruf T sebagai pemisah waktu, jam 2 digit, menit 2 digit, detik 2 digit, dan milidetik 4 digit). Misalnya: 20190627T0840107271.

  • FileDateTimeUniversal. Representasi file atau ramah jalur dari tanggal dan waktu saat ini dalam waktu universal (UTC), dalam format 24 jam. Formatnya adalah yyyyMMddTHHmmssffffZ (peka huruf besar/kecil, menggunakan tahun 4 digit, bulan 2 digit, hari 2 digit, huruf T sebagai pemisah waktu, jam 2 digit, menit 2 digit, detik 2 digit, milidetik 4 digit, dan huruf Z sebagai indikator UTC). Misalnya: 20190627T1540500718Z.

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

-Hour

Menentukan jam yang ditampilkan. Masukkan nilai dari 0 hingga 23.

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

-Millisecond

Menentukan milidetik dalam tanggal. Masukkan nilai dari 0 hingga 999.

Parameter ini diperkenalkan di PowerShell 3.0.

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

-Minute

Menentukan menit yang ditampilkan. Masukkan nilai dari 0 hingga 59.

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

-Month

Menentukan bulan yang ditampilkan. Masukkan nilai dari 1 hingga 12.

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

-Second

Menentukan detik yang ditampilkan. Masukkan nilai dari 0 hingga 59.

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

-UFormat

Menampilkan tanggal dan waktu dalam format UNIX. Parameter UFormat menghasilkan objek string.

Penentu UFormat didahului oleh tanda persen (%), misalnya, , %m%d, dan %Y. Bagian Catatan berisi tabel penentu UFormat yang valid.

Saat parameter UFormat digunakan, Get-Date hanya mendapatkan properti objek DateTime yang diperlukan untuk menampilkan tanggal. Akibatnya, beberapa properti dan metode objek DateTime mungkin tidak tersedia.

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

-UnixTimeSeconds

Tanggal dan waktu diwakili dalam detik sejak 1 Januari 1970, 0:00:00.

Parameter ini diperkenalkan di PowerShell 7.1.

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

-Year

Menentukan tahun yang ditampilkan. Masukkan nilai dari 1 hingga 9999.

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

Input

DateTime

Anda dapat menyalurkan objek DateTime ke cmdlet ini.

Output

DateTime

Secara default, cmdlet ini mengembalikan objek DateTime .

Saat objek DateTime dikirim ke alur ke cmdlet seperti Add-Content yang mengharapkan input string, PowerShell mengonversi objek menjadi objek String.

Metode (Get-Date).ToString() mengonversi objek DateTime objek String .

Untuk menampilkan properti dan metode objek, kirim objek ke bawah alur ke Get-Member. Contohnya, Get-Date | Get-Member.

String

Saat Anda menggunakan parameter Format atau UFormat , cmdlet ini mengembalikan objek String .

Catatan

Objek DateTime berada dalam format tanggal panjang dan lama untuk lokal sistem.

Penentu UFormat yang valid ditampilkan dalam tabel berikut:

Penting

Penentu UFormat diubah atau ditambahkan dalam versi PowerShell yang lebih baru. Misalnya, %F ditambahkan di PowerShell 6.2, sehingga tidak tersedia di Windows PowerShell 5.1 atau yang lebih lama. Ingatlah hal ini saat menggunakan penentu UFormat dalam skrip yang dirancang untuk dijalankan pada beberapa versi PowerShell.

Penentu format Makna Contoh
%A Hari dalam seminggu - nama lengkap Senin
%a Hari dalam seminggu - nama yang disingkat Sen
%B Nama bulan - lengkap Januari
%b Nama bulan - disingkat Jan
%C Abad 20 untuk 2019
%c Tanggal dan waktu - disingkat Juni 27 08:44:18 2019
%D Tanggal dalam format mm/dd/yyy 06/27/19
%d Hari dalam sebulan - 2 digit 05
%e Hari dalam sebulan - didahului oleh spasi jika hanya satu digit <spasi>5
%F Tanggal dalam format YYYY-mm-dd, sama dengan %Y-%m-%d (format tanggal ISO 8601) 2019-06-27
%G Tahun tanggal minggu ISO (tahun yang berisi Kamis dalam seminggu)
%g Sama seperti 'G' - 2 digit
%H Jam dalam format 24 jam 17
%h Sama seperti 'b'
%I Jam dalam format 12 jam 05
%j Hari dalam setahun 1-366
%k Sama seperti 'H'
%l Sama seperti 'I' (Huruf besar I) 05
%M Menit 35
%m Jumlah bulan 06
%n karakter baris baru
%p AM atau PM
%R Waktu dalam format 24 jam -tidak ada detik 17:45
%r Waktu dalam format 12 jam 09:15:36 AM
%S Detik 05
%s Detik berlalu sejak 1 Januari 1970 00:00:00 (UTC) 1150451174
%t Karakter tab horizontal
%T Waktu dalam format 24 jam 17:45:52
%U Sama seperti 'W'
%u Hari numerik dalam seminggu (1-7) (Diubah di PowerShell 7.2) Senin = 1, Minggu = 7
%V Minggu dalam setahun 01-53
%w Hari numerik dalam seminggu (0-6) Minggu = 0, Sabtu = 6
%W Minggu dalam setahun 00-52
%X Sama seperti 'T'
%x Tanggal dalam format standar untuk lokal 27/06/19 untuk Bahasa Inggris-AS
%Y Tahun dalam format 4 digit 2019
%y Tahun dalam format 2 digit 19
%Z Offset zona waktu dari Universal Time Coordinate (UTC) -07

Catatan

Perilaku -UFormat %s diubah untuk memperbaiki masalah dengan perilaku di Windows PowerShell.

  • Nilai yang dikembalikan didasarkan pada waktu UTC.
  • Nilainya adalah seluruh jumlah nilai detik (tidak ada bagian pecahan).