다음을 통해 공유


Get-Date

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

구문

Get-Date [-형식 <string>] [[-날짜] <DateTime>] [-Day <int>] [-DisplayHint {<Date> | <Time> | <DateTime>}] [-Hour <int>] [-Minute <int>] [-Month <int>] [-Second <int>] [-Year <int>] [<CommonParameters>]

Get-Date [-UFormat <string>] [[-날짜] <DateTime>] [-Day <int>] [-DisplayHint {<Date> | <Time> | <DateTime>}] [-Hour <int>] [-Minute <int>] [-Month <int>] [-Second <int>] [-Year <int>] [<CommonParameters>]

설명

Get-Date cmdlet은 현재 날짜 또는 지정한 날짜를 나타내는 DateTime 개체를 가져옵니다. 이 cmdlet은 날짜 및 시간을 여러 가지 Windows 및 UNIX 형식으로 지정할 수 있습니다. Get-Date를 사용하여 날짜 또는 시간 문자열을 생성한 다음 다른 cmdlet이나 프로그램으로 보낼 수 있습니다.

매개 변수

-날짜 <DateTime>

날짜 및 시간을 지정합니다. 기본적으로 Get-Date는 현재 시스템 날짜 및 시간을 가져옵니다.

독일어(독일)의 경우 dd-MM-yyyy, 영어(미국)의 경우 MM/dd/yyyy와 같이 시스템 로캘 표준 형식으로 날짜를 입력합니다.

필수 여부

false

위치

1

기본값

파이프라인 입력 적용 여부

true (ByValue, ByPropertyName)

와일드카드 문자 적용 여부

false

-Day <int>

표시되는 달의 날짜를 지정합니다. 1 – 31 범위의 값을 입력하십시오. 현재 날짜(오늘) 대신 이 값이 표시됩니다.

달의 일 수보다 큰 값을 지정하면 Windows PowerShell에서 해당 달에 일 수를 추가하고 그 결과를 표시합니다. 예를 들어 "get-date -month 2 -day 31"을 실행하면 "February 31"이 아니라 "March 3"이 표시됩니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-DisplayHint <DisplayHintType>

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

유효한 값은 다음과 같습니다.

-- Date: 날짜만 표시합니다.

-- Time: 시간만 표시합니다.

-- DateTime: 날짜와 시간을 표시합니다.

기본값은 DateTime입니다.

이 매개 변수는 Get-Date가 검색하는 DateTime 개체에 영향을 주지 않습니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-형식 <string>

형식 지정자가 나타내는 Microsoft .NET Framework 형식의 날짜 및 시간을 표시합니다. 형식 지정자를 입력합니다. 사용할 수 있는 형식 지정자의 목록은 MSDN(Microsoft Developer Network) 라이브러리(https://go.microsoft.com/fwlink/?LinkId=143638)의 "DateTimeFormatInfo Class"를 참조하십시오.

Format 매개 변수를 사용하는 경우 Windows PowerShell은 지정한 형식으로 날짜를 표시하는 데 필요한 DateTime 개체의 속성만 검색합니다. 따라서 DateTime 개체의 일부 속성 및 메서드는 사용하지 못할 수 있습니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-Hour <int>

표시되는 시간을 지정합니다. 1 – 23 범위의 값을 입력하십시오. 현재 시간 대신 이 값이 표시됩니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-Minute <int>

표시되는 분을 지정합니다. 1 – 59 범위의 값을 입력하십시오. 현재 분 대신 이 값이 표시됩니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-Month <int>

표시되는 달을 지정합니다. 1 – 12 범위의 값을 입력하십시오. 현재 달 대신 이 값이 표시됩니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-Second <int>

표시되는 초를 지정합니다. 1 – 59 범위의 값을 입력하십시오. 현재 초 대신 이 값이 표시됩니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-UFormat <string>

날짜 및 시간을 UNIX 형식으로 표시합니다. 형식 지정자 목록은 참고 섹션을 참조하십시오.

UFormat 매개 변수를 사용하는 경우 Windows PowerShell은 지정한 형식으로 날짜를 표시하는 데 필요한 DateTime 개체의 속성만 검색합니다. 따라서 DateTime 개체의 일부 속성 및 메서드는 사용하지 못할 수 있습니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-Year <int>

표시되는 연도를 지정합니다. 1 – 9999 범위의 값을 입력하십시오. 현재 연도 대신 이 값이 표시됩니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

<CommonParameters>

이 cmdlet은 -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, -OutVariable 등의 일반 매개 변수를 지원합니다. 자세한 내용은 about_commonparameters.

입력 및 출력

입력 유형은 cmdlet으로 파이프할 수 있는 개체의 유형입니다. 반환 유형은 cmdlet에서 반환되는 개체의 유형입니다.

입력

없음

입력을 이 cmdlet으로 파이프할 수 없습니다.

출력

System.DateTime 또는 System.String

Format 또는 UFormat 매개 변수를 사용하는 경우 출력 개체는 System.String입니다.

참고

기본적으로 날짜-시간은 시스템 로캘의 자세한 날짜 및 자세한 시간 형식으로 표시됩니다.

Add-Content와 같이 문자열 입력이 필요한 cmdlet에 날짜를 파이프하면 Windows PowerShell이 DateTime 개체를 문자열로 변환한 후 파일에 추가합니다. 기본 ToString() 형식은 간단한 날짜와 자세한 시간입니다. 대체 형식을 지정하려면 Get-Date의 Format 또는 UFormat 매개 변수를 사용하십시오.

Uformat 값:

UFormat 매개 변수의 값은 다음과 같습니다. 이 명령의 형식은 다음과 같습니다.

get-date -uformat %<value>

예를 들면 다음과 같습니다.

get-date -uformat %d

날짜-시간:

날짜 및 시간 – 전체

(기본값) (Friday, June 16, 2006 10:31:27 AM)

c 날짜 및 시간 - 축약형(Fri Jun 16 10:31:27 2006)

날짜:

D mm/dd/yy 형식 날짜(06/14/06)

x 로캘의 표준 형식 날짜(대한민국의 경우 07/09/12)

연도:

C 세기(2006년도의 경우 20)

Y 4자리 형식 연도(2006)

y 2자리 형식 연도(06)

G 'Y'와 같음

g 'y'와 같음

달:

b 달 이름 – 약식 명칭(1)

B 달 이름 – 정식 명칭(1월)

h 'b'와 같음

m 달 번호(06)

주:

W 주(00-52)

V 주(01-53)

U 'W'와 같음

요일:

a 요일 – 약식 명칭(월)

A 요일 – 정식 명칭(월요일)

u 요일 – 숫자(월요일 = 1)

d 요일 - 2자리(05)

e 요일 – 앞에 공백 표시( 5)

j 요일 - (1-366)

w 'u'와 같음

시간:

p 오전 또는 오후

r 12시간 형식(오전 09:15:36)

R 24시간 형식 – 초 표시 안 함(17:45)

T 24시간 형식(17:45:52)

X 'T'와 같음

Z UTC(협정 세계시) 기준 표준 시간대 오프셋(-07)

시:

H 24시간 형식(17)

I 12시간 형식(05)

k 'H'와 같음

l 'I'와 같음(대문자 I = 소문자 L)

분 및 초:

M 분(35)

S 초(05)

s 1970년 1월 1일 00:00:00로부터 경과한 시간(초)(1150451174.95705)

특수 문자:

n 줄 바꿈 문자(\n)

t 탭 문자(\t)

예 1

C:\PS>get-date -DisplayHint date

Tuesday, June 13, 2006

설명
-----------
이 명령은 DateTime 개체를 검색하지만 날짜만 표시합니다. DisplayHint 매개 변수를 사용하여 날짜만 표시된다는 것을 나타냅니다.





예 2

C:\PS>get-date -format g

6/13/2006 12:43 PM

설명
-----------
이 명령은 현재 날짜 및 시간을 검색하여 그 결과를 간단한 날짜 및 간단한 시간 형식으로 지정합니다. .NET Framework "g" 형식 지정자(일반(간단한 날짜 및 간단한 시간))를 사용하여 형식을 지정합니다.





예 3

C:\PS>get-date -uformat "%Y / %m / %d / %A / %Z"

2006 / 06 / 13 / Tuesday / -07

설명
-----------
이 명령은 현재 날짜 및 시간을 검색하여 그 결과를 명령에서 지정한 형식으로 지정합니다. 이 경우 형식에는 정식 연도(%Y), 2자리 수의 달(%m), 날짜(%d), 정식 요일(%A) 및 UTC 기준 오프셋("Zulu")이 포함됩니다.





예 4

C:\PS>(get-date -year 2000 -month 12 -day 31).dayofyear

366

설명
-----------
이 명령은 현재 날짜의 연간 일을 표시합니다. 예를 들어 12월 31일이 2006년에는 365번째 날이지만 2000년에는 366번째 날입니다.





예 5

C:\PS>$a = get-date

C:\PS> $a.IsDaylightSavingTime()

True

설명
-----------
이들 명령은 현재 날짜와 시간이 현재 로캘의 써머타임제에 맞게 조정되었는지 확인합니다. 

첫 번째 명령은 $a라는 변수를 만든 다음 Get-Date가 검색한 개체를 $a 변수에 할당합니다. 그런 다음 $a의 개체에 대해 IsDaylightSavingTime 메서드를 사용합니다.

DateTime 개체의 속성 및 메서드를 보려면 다음을 입력합니다.
 "get-date | get-member".





예 6

C:\PS>$a = get-date

C:\PS> $a.ToUniversalTime()

Tuesday, June 13, 2006 8:09:19 PM

설명
-----------
이들 명령은 현재 날짜와 시간을 UTC 시간으로 변환합니다.

첫 번째 명령은 $a라는 변수를 만든 다음 Get-Date가 검색한 개체를 $a 변수에 할당합니다. 그런 다음 $a의 개체에 대해 ToUniversalTime 메서드를 사용합니다.





예 7

C:\PS>$a = get-wmiobject win32_bios -computer server01

$a | format-list -property Name, @{Label="BIOS Age"; `
Expression={(get-date) - $_.ConvertToDateTime($_.ReleaseDate)}}

Name     : Default System BIOS
BIOS Age : 1345.17:31:07.1091047

설명
-----------
WMI(Windows Management Instrumentation)는 Get-Date가 반환하는 .NET Framework date-time 개체와는 다른 date-time 개체를 사용합니다. 명령에서 Get-Date가 반환한 date-time 정보와 함께 WMI의 date-time 정보를 사용하려면 ConvertToDateTime 메서드를 사용하여 WMI CIM_DATETIME 개체를 .NET Framework DateTime 개체로 변환해야 합니다.

이 예제의 명령은 원격 컴퓨터 Server01의 BIOS 이름과 사용 기간을 표시합니다. 

첫 번째 명령은 Get-WmiObject cmdlet을 사용하여 Server01의 Win32_BIOS 클래스 인스턴스를 가져와 $a 변수에 저장합니다.

두 번째 명령은 파이프라인 연산자(|)를 사용하여 $a에 저장된 WMI 개체를 Format-List cmdlet으로 보냅니다. Format-List의 Property 매개 변수는 목록에 표시할 "Name" 및 "BIOS Age" 속성을 지정하는 데 사용됩니다. "BIOS Age" 속성은 해시 테이블에서 지정됩니다. 표에는 속성 이름을 지정하는 Label 키와 BIOS 사용 기간을 계산하는 식이 있는 Expression 키가 포함되어 있습니다. 이 식은 ConvertToDateTime 메서드를 사용하여 ReleaseDate의 각 인스턴스를 .NET Framework DateTime 개체로 변환합니다. 그런 다음 그 값을 매개 변수 없이 현재 날짜를 가져오는 Get-Date cmdlet의 값에서 뺍니다.

역음 기호(`)는 Windows PowerShell의 줄 계속 문자입니다.





예 8

C:\PS>get-date

Tuesday, June 13, 2006 12:43:42 PM

설명
-----------
이 명령은 DateTime 개체를 가져와 현재 날짜 및 시간을 시스템 로캘의 자세한 날짜 및 자세한 시간 형식으로 표시합니다. 이는 "get-date -format F"를 입력한 것과 같습니다.





예 9

C:\PS>get-date

C:\PS> Tuesday, September 26, 2006 11:25:31 AM

c:\PS>(get-date).ToString()
9/26/2006 11:25:31 AM

C:\PS>get-date | add-content test.txt  
# Adds 9/26/2006 11:25:31 AM

C:\PS>get-date -format F | add-content test.txt
# Adds Tuesday, September 26, 2006 11:25:31 AM

설명
-----------
이들 명령은 Add-Content 및 Get-Date가 생성한 DateTime 개체를 문자열로 변환하는 다른 cmdlet과 함께 Get-Date를 사용하는 방법을 보여 줍니다.

첫 번째 명령은 "get-date" 명령의 기본 표시가 자세한 날짜 및 자세한 시간 형식임을 보여 줍니다.

두 번째 명령은 DateTime 개체의 ToString() 메서드의 기본 표시가 간단한 날짜 및 간단한 시간 형식임을 보여 줍니다.

세 번째 명령은 파이프라인 연산자(|)를 사용하여 DateTime 개체를 Add-Content cmdlet으로 보냅니다. 이 cmdlet은 해당 내용을 Test.txt 파일에 추가합니다. Add-Content는 DateTime 개체의 ToString() 메서드를 사용하므로 추가된 날짜는 간단한 날짜 및 간단한 시간 형식입니다.

네 번째 명령은 Get-Date의 Format 매개 변수를 사용하여 형식을 지정합니다. Format 또는 UFormat 매개 변수를 사용하는 경우 Get-Date는 DateTime 개체 대신 문자열을 생성합니다. 그런 다음 문자열을 Add-Content로 보내면 이 cmdlet은 문자열을 변경하지 않고 Test.txt 파일에 추가합니다.





참고 항목

개념

Set-Date
New-TimeSpan