PowerShell

PowerShell 명령어 실행결과확인 또는 실행승인

delmaster 2016. 2. 25. 09:00

파워쉘에서 명령어를 입력하여 실행할때 지금 입력한 명령어가 실행되면 어떤 결과물이 발생될지 확인 해볼 수 있으며, 원한다면 명령어에 대한 결과물을 예측하고 사용자가 '승인' 을해야 명령이 실제로 동작하게 할 수 있겠습니다.

 

이 두개의 옵션은 '-WhatIf' 와 '–Confirm' 입니다.

 

각 사용법은 예제를 통해 알아 봅시다.

 

Whatif

PS C:\> Stop-Process -Name MicrosoftEdge -WhatIf
WhatIf: 대상 "MicrosoftEdge (3760)"에서 "Stop-Process" 작업을 수행합니다.

 

PS C:\> Stop-Service -Name Dnscache -WhatIf
WhatIf: 대상 "DNS Client (Dnscache)"에서 "Stop-Service" 작업을 수행합니다.

 

PS C:\> New-Item -Path C:\ -Name dirtest -ItemType Directory -WhatIf
WhatIf: 대상 "대상: C:\dirtest"에서 "디렉터리 만들기" 작업을 수행합니다.

 

상기 내용처럼,

프로세스 또는 서비스가 실제로 종료 되지 않고 명령어가 수행되었을때 어떤 결과가 발생될 수 있는지 확인 할 수 있습니다.

 

 

Confirm

PS C:\> Stop-Process -Name MicrosoftEdge -Confirm

확인
이 작업을 수행하시겠습니까?
대상 "MicrosoftEdge (5080)"에서 "Stop-Process" 작업을 수행합니다.
[Y] 예(Y)  [A] 모두 예(A)  [N] 아니요(N)  [L] 모두 아니요(L)  [S] 일시 중단(S)  [?] 도움말 (기본값은 "Y"):

 

PS C:\> New-Item -Path C:\ -Name d -ItemType Directory -Confirm

확인
이 작업을 수행하시겠습니까?
대상 "대상: C:\d"에서 "디렉터리 만들기" 작업을 수행합니다.
[Y] 예(Y)  [A] 모두 예(A)  [N] 아니요(N)  [L] 모두 아니요(L)  [S] 일시 중단(S)  [?] 도움말 (기본값은 "Y"):

 

PS C:\> Stop-Process -Name notepad -Confirm

확인
이 작업을 수행하시겠습니까?
대상 "notepad (6872)"에서 "Stop-Process" 작업을 수행합니다.
[Y] 예(Y)  [A] 모두 예(A)  [N] 아니요(N)  [L] 모두 아니요(L)  [S] 일시 중단(S)  [?] 도움말 (기본값은 "Y"):

 

상기 내용과 같이 실제 명령어 실행 결과에 대한 '예측' 과 함께 '승인' 을 해야 명령어가 실제 수행되는 형태입니다.

 

 

'Whatif' 와 'Confirm' 을 적절하게 잘 활용해서 '실수' 하는 일을 줄이도록 해야겠습니다.

'PowerShell' 카테고리의 다른 글

PowerShell 변수 사용  (0) 2016.02.29
PowerShell 리디렉션 출력  (0) 2016.02.26
PowerShell 필터링 기능  (0) 2016.02.26
PowerShell 비교 연산자  (0) 2016.02.25
PowerShell 폴더와 파일 생성  (0) 2016.02.25
PowerShell Alias  (0) 2016.02.24
PowerShell 도움말 업데이트  (0) 2016.02.24
PowerShell 버전 확인  (0) 2016.02.24