Get-Date

현재 날짜 및 시간을 가져옵니다.

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 현재 날짜 또는 지정한 날짜를 나타내는 DateTime 개체를 가져옵니다. Get-Date 는 날짜 및 시간을 여러 .NET 및 UNIX 형식으로 포맷할 수 있습니다. 날짜 또는 시간 문자열을 생성한 다음 다른 cmdlet 또는 프로그램에 문자열을 보내는 데 사용할 Get-Date 수 있습니다.

Get-Date 는 컴퓨터의 문화권 설정을 사용하여 출력의 형식을 지정하는 방법을 결정합니다. 컴퓨터의 설정을 보려면 다음을 사용합니다 (Get-Culture).DateTimeFormat.

예제

예제 1: 현재 날짜 및 시간 가져오기

이 예제에서는 Get-Date 현재 시스템 날짜 및 시간을 표시합니다. 출력은 긴 날짜 및 장기 형식입니다.

Get-Date

Tuesday, June 25, 2019 14:53:32

예제 2: 현재 날짜 및 시간의 요소 가져오기

이 예제에서는 날짜 또는 시간 요소를 가져오는 데 사용하는 Get-Date 방법을 보여줍니다. 매개 변수는 Date, Time 또는 DateTime 인수를 사용합니다.

Get-Date -DisplayHint Date

Tuesday, June 25, 2019

Get-Date에서는 Date 인수와 DisplayHint 매개 변수를 사용하여 날짜만 가져옵니다.

예제 3: .NET 형식 지정자를 사용하여 날짜 및 시간 가져오기

이 예제에서는 .NET 형식 지정자를 사용하여 출력의 형식을 사용자 지정합니다. 출력은 String 개체입니다.

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

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

Get-DateFormat 매개 변수를 사용하여 여러 형식 지정자를 지정합니다.

이 예제에서 사용되는 .NET 형식 지정자는 다음과 같이 정의됩니다.

지정자 정의
dddd 요일 - 전체 이름
MM 월 번호
dd 월의 날 - 2자리 숫자
yyyy 연도(4자리 형식)
HH:mm 24시간 형식의 시간 - 초 없음
K UTC(유니버설 시간 좌표)의 표준 시간대 오프셋

.NET 형식 지정자에 대한 자세한 내용은 사용자 지정 날짜 및 시간 형식 문자열을 참조하세요.

예제 4: UFormat 지정자를 사용하여 날짜 및 시간 가져오기

이 예제에서는 출력의 형식을 사용자 지정하는 데 여러 UFormat 형식 지정자를 사용합니다. 출력은 String 개체입니다.

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

Tuesday 06/25/2019 16:19 -07

Get-DateUFormat 매개 변수를 사용하여 여러 형식 지정자를 지정합니다.

이 예제에서 사용되는 UFormat 형식 지정자는 다음과 같이 정의됩니다.

지정자 정의
%A 요일 - 전체 이름
%m 월 번호
%d 월의 날 - 2자리 숫자
%Y 연도(4자리 형식)
%R 24시간 형식의 시간 - 초 없음
%Z UTC(유니버설 시간 좌표)의 표준 시간대 오프셋

유효한 UFormat 형식 지정자 목록은 메모 섹션을 참조하세요.

예제 5: 연중 날짜 가져오기

이 예제에서는 해당 연도의 숫자 일을 가져오는 데 속성이 사용됩니다.

그레고리오력에는 366일이 있는 윤년을 제외하고 365일이 있습니다. 예를 들어 2020년 12월 31일은 366일입니다.

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

366

Get-Date에서는 세 개의 매개 변수를 사용하여 날짜를 지정합니다. 이 명령은 DayofYear 속성에 의해 결과가 평가되도록 괄호로 래핑됩니다.

예제 6: 일광 절약 시간에 대해 날짜가 조정되었는지 확인

이 예제에서는 부울 메서드를 사용하여 일광 절약 시간에 따라 날짜가 조정되는지 확인합니다.

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

True

변수, $DSTGet-Date결과를 저장합니다. $DST는 IsDaylightSavingTime 메서드를 사용하여 일광 절약 시간에 맞게 날짜가 조정되었는지 테스트합니다.

예제 7: 현재 시간을 UTC 시간으로 변환

이 예제에서 현재 시간은 UTC 시간으로 변환됩니다. 시스템 로캘에 대한 UTC 오프셋은 시간을 변환하는 데 사용됩니다. Notes 섹션의 표에는 유효한 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 는 형식 지정자와 함께 UFormat 매개 변수를 사용하여 현재 시스템 날짜 및 시간을 표시합니다. 형식 지정자 %Z-07의 UTC 오프셋을 나타냅니다.

변수는 $Time 현재 시스템 날짜 및 시간을 저장합니다. $TimeToUniversalTime() 메서드를 사용하여 컴퓨터의 UTC 오프셋에 따라 시간을 변환합니다.

예제 8: 타임스탬프 만들기

이 예제에서 형식 지정자는 디렉터리 이름에 대한 타임스탬프 String 개체를 만듭니다. 타임스탬프에는 날짜, 시간 및 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

변수는 $timestamp 명령의 결과를 저장합니다 Get-Date . Get-Date는 소문 o 자의 서식 지정자를 사용하여 Format 매개 변수를 사용하여 타임스탬프 String 개체를 만듭니다. 개체가 파이프라인 아래로 전송됩니다 ForEach-Object. ScriptBlock에는 현재 파이프라인 개체를 $_ 나타내는 변수가 포함됩니다. 타임스탬프 문자열은 마침표로 대체되는 콜론으로 구분됩니다.

New-ItemPath 매개 변수를 사용하여 새 디렉터리의 위치를 지정합니다. 경로에는 변수가 $timestamp 디렉터리 이름으로 포함됩니다. Type 매개 변수는 디렉터리가 생성되도록 지정합니다.

예제 9: Unix 타임스탬프 변환

이 예에서는 Unix 시간(1970-01-01 0:00:00 이후의 초로 표시됨)을 DateTime으로 변환합니다.

Get-Date -UnixTimeSeconds 1577836800

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

예제 10: UTC로 해석된 날짜 값 반환

이 예제에서는 날짜 값을 UTC와 동등한 값으로 해석하는 방법을 보여줍니다. 예를 들어 이 컴퓨터는 Pacific Standard Time으로 설정됩니다. 기본적으로 Get-Date 해당 표준 시간대의 값을 반환합니다. AsUTC 매개 변수를 사용하여 값을 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

매개 변수

-AsUTC

날짜 값을 동등한 시간(UTC)으로 변환합니다.

이 매개 변수는 PowerShell 7.1에서 도입되었습니다.

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

날짜 및 시간을 지정합니다. 시간은 선택 사항이며 지정하지 않으면 00:00:00을 반환합니다.

시스템 로캘의 표준 형식으로 날짜와 시간을 입력합니다.

예를 들어 미국 영어:

Get-Date -Date "6/25/2019 12:30:22" 반환 화요일, 6 월 25, 2019 12:30:22

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

표시되는 월의 날짜를 지정합니다. 1에서 31 사이의 값을 입력합니다.

지정된 값이 월의 일 수보다 큰 경우 PowerShell은 해당 월에 일 수를 추가합니다. 예를 들어 Get-Date -Month 2 -Day 31 2 월 31일이 아닌 3월 3일을 표시합니다.

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

표시되는 날짜 및 시간 요소를 결정합니다.

허용되는 값은 다음과 같습니다.

  • 날짜: 날짜만 표시합니다.
  • 시간: 시간만 표시합니다.
  • DateTime: 날짜 및 시간을 표시합니다.
Type:DisplayHintType
Accepted values:Date, Time, DateTime
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Format

형식 지정자가 나타내는 Microsoft .NET Framework 형식의 날짜 및 시간을 표시합니다. Format 매개 변수는 String 개체를 출력합니다.

사용 가능한 .NET 형식 지정자 목록은 사용자 지정 날짜 및 시간 형식 문자열을 참조하세요.

Format 매개 변수를 사용하는 Get-Date 경우 날짜를 표시하는 데 필요한 DateTime 개체의 속성만 가져옵니다. 따라서 DateTime 개체의 일부 속성 및 메서드를 사용하지 못할 수 있습니다.

PowerShell 5.0부터 다음 추가 형식을 Format 매개 변수의 값으로 사용할 수 있습니다.

  • FileDate. 로컬 시간의 현재 날짜에 대한 파일 또는 경로 친화적 표현입니다. 형식은 yyyyMMdd 대/소문자를 구분하며 4자리 연도, 2자리 월 및 2자리 일을 사용합니다. 예: 20190627.

  • FileDateUniversal. UTC(유니버설 타임)의 현재 날짜에 대한 파일 또는 경로 친화적 표현입니다. 형식은 yyyyMMddZ 대/소문자를 구분하며 4자리 연도, 2자리 월, 2자리 일 및 문자를 Z UTC 표시기로 사용합니다. 예: 20190627Z.

  • FileDateTime. 24시간 형식으로 현재 날짜 및 시간을 로컬 시간으로 나타내는 파일 또는 경로에 친숙한 표현입니다. 형식은 yyyyMMddTHHmmssffff 대/소문자를 구분하며 4자리 연도, 2자리 월, 2자리 일, 문자를 T 시간 구분 기호, 2자리 시간, 2자리 분, 2자리 초 및 4자리 밀리초로 사용합니다. 예: 20190627T0840107271.

  • FileDateTimeUniversal. 24시간 형식의 현재 날짜 및 시간(UTC)의 파일 또는 경로 친화적 표현입니다. 형식은 yyyyMMddTHHmmssffffZ 대/소문자를 구분하며, 4자리 연도, 2자리 월, 2자리 일, 시간 구분 기호로 문자 T , 2자리 시간, 2자리 분, 2자리 초, 4자리 밀리초 및 문자를 Z UTC 지표로 사용합니다. 예: 20190627T1540500718Z.

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

표시되는 시간을 지정합니다. 0에서 23까지의 값을 입력합니다.

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

날짜에서 밀리초를 지정합니다. 0에서 999 사이의 값을 입력합니다.

이 매개 변수는 PowerShell 3.0에서 도입되었습니다.

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

표시되는 분을 지정합니다. 0에서 59까지의 값을 입력합니다.

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

표시되는 월을 지정합니다. 1에서 12까지의 값을 입력합니다.

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

표시되는 초를 지정합니다. 0에서 59까지의 값을 입력합니다.

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

날짜 및 시간을 UNIX 형식으로 표시합니다. UFormat 매개 변수는 문자열 개체를 출력합니다.

UFormat 지정자 앞에 백분율 기호(%예: %m, %d%Y)가 있습니다. Notes 섹션에는 유효한 UFormat 지정자의 테이블이 포함되어 있습니다.

UFormat 매개 변수를 사용하는 Get-Date 경우 날짜를 표시하는 데 필요한 DateTime 개체의 속성만 가져옵니다. 따라서 DateTime 개체의 일부 속성 및 메서드를 사용하지 못할 수 있습니다.

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

날짜 및 시간은 1970년 1월 1일 0:00:00 이후 초 단위로 표시됩니다.

이 매개 변수는 PowerShell 7.1에서 도입되었습니다.

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

표시되는 연도를 지정합니다. 1에서 9999까지의 값을 입력합니다.

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

입력

Pipeline input

Get-Date 는 파이프라인 입력을 허용합니다. 예: Get-ChildItem | Get-Date.

출력

System.DateTime or System.String

Get-Date는 FormatUFormat 매개 변수를 사용하는 경우를 제외하고 DateTime 개체를 반환합니다. Format 또는 UFormat 매개 변수는 String 개체를 반환합니다.

DateTime 개체가 파이프라인 아래로 문자열 입력이 예상되는 cmdlet으로 Add-Content 보내지면 PowerShell은 개체를 String 개체로 변환합니다.

이 메서드 (Get-Date).ToString()DateTime 개체를 String 개체로 변환합니다.

개체의 속성 및 메서드를 표시하려면 파이프라인 아래로 개체를 Get-Member보냅니다. 예: Get-Date | Get-Member.

참고

DateTime 개체는 시스템 로캘에 대한 장시간 형식입니다.

유효한 UFormat 지정자는 다음 표에 표시됩니다.

서식 지정자 의미 예제
%A 요일 - 전체 이름 월요일
%a 요일 - 약어 이름 Mon
%B 월 이름 - 전체 January
%b 월 이름 - 약어 1월
%C 세기 2019년 20개
%c 날짜 및 시간 - 약어 2019년 6월 27일 목요일 08:44:18
%D mm/dd/yy 형식의 날짜 06/27/19
%d 월의 일 - 2자리 05
%e 월의 일 - 앞에 공백(한 자리만 있는 경우) <space>5
%F %YYYY-mm-dd 형식의 날짜(%Y-%m-%d)(ISO 8601 날짜 형식) 2019-06-27
%G ISO 주 날짜 연도(요일이 포함된 연도)
%g 'G'와 동일 - 2자리 숫자
%H 24시간 형식의 시간 17
%h 'b'와 동일
%I 12시간 형식의 시간 05
%j 연중 일 1-366
%k 'H'와 동일
%l 'I'와 동일(대문자 I) 05
%M 35
%m 월 번호 06
%n 줄 줄 문자
%p AM 또는 PM
%R 24시간 형식의 시간 -초 없음 17:45
%r 12시간 형식의 시간 오전 09:15:36
%S 05
%s 1970년 1월 1일 00:00:00 이후 경과된 초 1150451174
%t 가로 탭 문자
%T 24시간 형식의 시간 17:45:52
%U 'W'와 동일
%u 요일 숫자(1-7) 월요일 = 1, 일요일 = 7
%V 올해의 주 01-53
%w 요일 숫자(0-6) 일요일 = 0, 토요일 = 6
%W 올해의 주 00-52
%X 'T'와 동일
%x 로캘에 대한 표준 형식의 날짜 06/27/19( 영어-미국)
%Y 연도(4자리 형식) 2019
%y 연도(2자리 형식) 19
%Z UTC(유니버설 시간 좌표)의 표준 시간대 오프셋 -07