보통은 스크립트를 만들어서 끝난 시점의 시간에서 시작한 시점의 시간을 빼서 실행 시간을 측정한다. 물론 Powershell에서도 그런 방법이 있겠지만 훨씬 간편한 방법이 있다.
바로 Measure-Command 이다
Measure-Command 사용법
Mesure-Command { ls }
Days : 0
Hours : 0
Minutes : 0
Seconds : 0
Milliseconds : 1
Ticks : 12375
TotalDays : 1.43229166666667E-08
TotalHours : 3.4375E-07
TotalMinutes : 2.0625E-05
TotalSeconds : 0.0012375
TotalMilliseconds : 1.2375
사용법은 정말 간단하다. 그냥 명령어 뒤 중괄호 안에 프로그램을 넣고 실행시키면 알아서 실행하고 시간까지 측정해준다. 만약 여러개의 명령어를 실행하고 싶다면 ;
로 구분하면 된다.
출력을 볼 수 없다?
위에서 볼 수 있듯이 stdout
으로 나와야할 결과들이 출력되지 않는다. 만약 결과를 보고 싶다면 Out-Default
를 pipe 하면 된다.
Measure-Command {ls | Out-Default}
d---- 2021-12-03 오후 2:49 1 blog
d---- 2022-03-23 오후 10:14 1 go
d---- 2022-05-13 오후 4:50 1 golang
d---- 2022-05-09 오전 11:33 1 java
d---- 2022-04-23 오후 3:12 1 js
d---- 2022-04-12 오후 4:54 1 localstack
d---- 2022-03-29 오전 12:31 1 project
d---- 2022-05-10 오후 1:49 1 python
d---- 2022-01-11 오후 12:40 1 SDK
d---- 2021-05-05 오전 2:43 1 TEMP
Days : 0
Hours : 0
Minutes : 0
Seconds : 0
Milliseconds : 21
Ticks : 214767
TotalDays : 2.48572916666667E-07
TotalHours : 5.96575E-06
TotalMinutes : 0.000357945
TotalSeconds : 0.0214767
TotalMilliseconds : 21.4767
원하는 시간만 따로 빼기
11개의 값 중에서 원하는 값이 있다면 그 값만 불러올 수도 있다.
(Measure-Command {ls}).TotalSeconds
0.0008601
전체를 괄호로 감싼 뒤 .원하는 값
을 통해서 편리하게 가져올 수 있다.